Hello,
I'm currently trying to do what should be a simple task but the searches for proc expand and retain functions haven't been giving me the code that I need.
I currently have 3 columns, ID, Startdate, enddate, and I'd like to expand my dataset to fill in the months between my start and end dates.
For example:
ID Startdate Enddate
1 01/2001 03/2001
Would become:
ID date
1 01/2001
1 02/2001
1 03/2001
Thanks.
I assume that startdate and enddate are both SAS dates in mmyys7. format:
data new (keep=id date);
set old;
format date mmyys7.;
do increment = 0 to intck('month', startdate, enddate);
date = intnx('month', startdate, increment, 'beginning');
output;
end;
run;
I assume that startdate and enddate are both SAS dates in mmyys7. format:
data new (keep=id date);
set old;
format date mmyys7.;
do increment = 0 to intck('month', startdate, enddate);
date = intnx('month', startdate, increment, 'beginning');
output;
end;
run;
Works exactly as I wanted! Thanks!
Don't miss out on SAS Innovate - Register now for the FREE Livestream!
Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.
Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.
Find more tutorials on the SAS Users YouTube channel.