Hello,
I have a delimited raw data file .
Now I want to create a SAS dataset using the raw data file using Do loop as there are variable number of records and variable length fileds.
How to increment it in Do loop.
Input :
A 1*2*3*4*5
B 5*6*7
C 1*45*78*54
Desired Output:
A 1
A 2
A 3
A 4
A 5
B 5
B 6
B 7
C 1
C 45
C 78
C 54
I am not getting how to increment the DO loop with delimiter value.....
Thanks....
data have; infile cards dlm=' *' truncover; input id $ v $ @; do until(missing(v)); output; input v $ @; end; cards; A 1*2*3*4*5 B 5*6*7 C 1*45*78*54 ; run;
Xia Keshan
Use scan(var,n,'*') together with a do until loop.
Can you please let me know how to write that if my delimiter is Hex Value ('41'x) instead of '*' ?
scan(var,n,'41'x)
data have; infile cards dlm=' *' truncover; input id $ v $ @; do until(missing(v)); output; input v $ @; end; cards; A 1*2*3*4*5 B 5*6*7 C 1*45*78*54 ; run;
Xia Keshan
Thank you all.... 🙂
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and save with the early bird rate—just $795!
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.