Hi Everyone! I have data showing every month a member is enrolled in a program. A person can be continuously enrolled, but most often a member is in and out of the program. The first observation for every member indicates the first date the member is enrolled in the program. Here is an example of the data: ID SEX Eligible_DT 1A F 10/01/2010 1A F 11/20/2010 1A F 12/05/2010 1B M 01/01/2011 1B M 03/06/2011 1B M 05/12/2011 1B M 06/14/2011 1B M 10/15/2011 1B M 11/27/2011 1C F 09/16/2011 1C F 11/30/2011 1D M 10/01/2010 Let's call this dataset A What I want to do is create dummy variables from the start date of my analysis to the last date of my analysis (Oct2009 - Sep2015). However, for the dummy variable dates, I only want MonthYear dummy variables (72 dummy variables in total: FORMAT 200910 - 201509). I did an ARRAY but the code I used created dummy variables for every single day between Oct2009 - Sep2015 instead of every single month. This resulted in thousands of dummy variables for the number of days between Oct2009 - Sep2015. Here is the code I used: PROC SQL; SELECT MIN(Eligible_DT) FORMAT YYMMN6., MAX(Eligible_DT) FORMAT YYMMN6. INTO :FIRST_DATE, :LAST_DATE FROM A; QUIT; DATA B1; SET A; BY ID SEX; ARRAY DATE(&FIRST_DATE : &LAST_DATE)); RUN; My second try used the TRANSPOSE; here is the code: PROC SORT DATA=A; BY ID SEX ELIGIBLE_DT; RUN; PROC TRANSPOSE DATA=A OUT=B2 PREFIX=DATE; BY ID SEX; VAR ID; ID ELIGIBLE_DT; FORMAT ELIGIBLE_DT YYMMN6.; RUN; This gets me really close to what I want; however, the MonthYear dummy variables do not follow chronological order for the whole dataset (instead, it follows chronological order per member). I would like for the MonthYear dummy variables to go in chronological order for the whole dataset. Also, I would like SAS to input certain values for each dummy MonthYear depending on a certain condition of the member. For every member, I want to assign "." for people not yet enrolled in the program (my analysis starts before some people enroll), "1" for people enrolled in the program at that particular month in time, and "0" if the person has been incorporated into the analysis but not enrolled in the program at that particular month. Taking dataset A, here's how I want the final dataset to look like (note, it does not include all the dummy MonthYear variables of my study because I can't fit them all in here): ID SEX DATE 2010 10 DATE 2010 11 DATE 2010 12 DATE 2011 01 DATE 2011 02 DATE 2011 03 DATE 2011 04 DATE 2011 05 DATE 2011 06 DATE 2011 07 DATE 2011 08 DATE 2011 09 DATE 2011 10 DATE 2011 11 1A F 1 1 1 0 0 0 0 0 0 0 0 0 0 0 1B M . . . 1 0 1 0 1 1 0 0 0 1 1 1C F . . . . . . . . . . . 1 0 1 1D M 1 0 0 0 0 0 0 0 0 0 0 0 0 0 I've been trying to figure this out all day and just can't seem to overcome the hurdle on my own. I am using SAS 9.4 Muchas Gracias
... View more