data t;
input sno category$ 20.;
cards;
1 dairy floor eggs
2 floor milk
3 eggs bread
4 bread butter butter
;run;
i have this data set and i want distinct category (dairy,floor,eggs,milk,bread,butter).
I can do like this
data t1;
set t;
do i=1 to 3;
x=scan(category,i);
output;
end;
run;
proc print;run;
but here i dnt knw how many times i have to run the loop like 3 or 4 or 5 times.Any optimum way?
data t1;
set t;
do i=1 to countw(category);
x=scan(category,i);
output;
end;
run;
Read the categories one by one until the end of each line:
data t;
infile datalines truncover;
input sno category :$20. @;
do until(missing(category));
output;
input category :$20. @;
end;
datalines;
1 dairy floor eggs
2 floor milk
3 eggs bread
4 bread butter butter
;
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 lock in 2025 pricing—just $495!
Still thinking about your presentation idea? The submission deadline has been extended to Friday, Nov. 14, at 11:59 p.m. ET.
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.