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.
It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.
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.