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.
Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.
Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.
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.