Hi , I have to import a CSV file as a SAS Dataset . The CSV file has various fields which have list of values separated by a delimiter. For example there is a variable citizenship with values like French;Spanish .
I am unable to figure out how to read this list using the input statement in data step.
Attaching a dummy CSV file as an example.
Read it into a temporary variable, and use a DO loop to split the data into observations:
data want;
infile
"/folders/myfolders/test.csv"
dsd
truncover
firstobs=2
;
input uid $ _fav_color :$100.;
length fav_color $20;
do i = 1 to countw(_fav_color,"~");
fav_color = scan(_fav_color,i,"~");
output;
end;
drop _fav_color;
run;
Read it into a temporary variable, and use a DO loop to split the data into observations:
data want;
infile
"/folders/myfolders/test.csv"
dsd
truncover
firstobs=2
;
input uid $ _fav_color :$100.;
length fav_color $20;
do i = 1 to countw(_fav_color,"~");
fav_color = scan(_fav_color,i,"~");
output;
end;
drop _fav_color;
run;
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.