How can I create date as well as unit for all the combinations. What's wrong with this code?
Data dummy;
date="&start."d;
do while (date<="&enddt."d);
output;
date=intnx('day', date, 1, 's');
end;
format date date9.;
array unit[3] $ '45' '55' '65';
do i=1 to 3;
unit = unit[i];
end;
> What's wrong with this code?
Its formatting for sure.
Also we don't know what result you expect. the second loop does nothing as no output statement is provided.
I suppose you might want to put the second loop inside the first one maybe?
data DUMMY;
array UNITS[3] $ '45' '55' '65';
do DATE="&startdt"d to "&enddt"d;
do I=1 to dim(UNITS);
UNIT= UNITS[I];
output;
end;
end;
format DATE date9.;
run;
> What's wrong with this code?
Its formatting for sure.
Also we don't know what result you expect. the second loop does nothing as no output statement is provided.
I suppose you might want to put the second loop inside the first one maybe?
data DUMMY;
array UNITS[3] $ '45' '55' '65';
do DATE="&startdt"d to "&enddt"d;
do I=1 to dim(UNITS);
UNIT= UNITS[I];
output;
end;
end;
format DATE date9.;
run;
Thank you. It worked with parenthesis
data DUMMY;
array UNITS[3] $ ('45' '55' '65');
do DATE="&startdt"d to "&enddt"d;
do I=1 to dim(UNITS);
UNIT= UNITS[I];
output;
end;
end;
format DATE date9.;
run;
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.