Hi all,
I have a dataset that has a variable "start" and a variable "end" with count data representing an interval. I want to convert that data to be 1 row per count rather than by interval, like this:
Subject start end var
1 1 3 x
1 4 5 y
2 1 5 z
To look like this:
Subject count var
1 1 x
1 2 x
1 3 x
1 4 y
1 5 y
2 1 z
2 2 z
...
I dont know how to manipulate the array code to reference these variables instead of doing from i=1 to x. Any help is appreciated. Thank you..
Is below code what you want?
data foo;
input subject start end var $;
datalines;
1 1 3 x
1 4 5 y
2 1 5 z
;
data convert;
set foo;
do count=start to end;
output;
end;
drop start end;
run;
Is below code what you want?
data foo;
input subject start end var $;
datalines;
1 1 3 x
1 4 5 y
2 1 5 z
;
data convert;
set foo;
do count=start to end;
output;
end;
drop start end;
run;
Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
Register now!
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.
Ready to level-up your skills? Choose your own adventure.