I Have a Data Like below table. I Just Had only name and Grade. Need to create All_Grades(Individual Grades should come seperated by "-")
Name Grade All_Grades
Alfred A A-B-C-A-D
Alfred B A-B-C-A-D
Alfred C A-B-C-A-D
Alfred A A-B-C-A-D
Alfred D A-B-C-A-D
James B B-C-A
James C B-C-A
James A B-C-A
Philip D D-C-A-A
Philip C D-C-A-A
Philip A D-C-A-A
Philip A D-C-A-A
William A A-A-C
William A A-A-C
William C A-A-C
Thanks in advance
Here's one way, assuming that your data is sorted by NAME:
data want;
length all_grades $ 20;
do until (last.name);
set have;
by name;
all_grades = catx('-', all_grades, grade);
end;
do until (last.name);
set have;
by name;
output;
end;
run;
Please post what you'd like the output to be, for clarification.
Also...look at the scan function.
Here's one way, assuming that your data is sorted by NAME:
data want;
length all_grades $ 20;
do until (last.name);
set have;
by name;
all_grades = catx('-', all_grades, grade);
end;
do until (last.name);
set have;
by name;
output;
end;
run;
Yes, It's working Fine. Thanks a lot.
Please mark the appropriate response as your accepted solution.
This helps other users know that a correct or acceptable answer for a given problem has been posted.
Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!
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.