1. I have a dataset need to summarize the dataset and update the records as specified.
data test;
input stud_id subject marks
datalines
1 A 40
1 B 35
1 B 40
1 C 30
1 C 33
1 C 40
1 D 50
2 A 45
2 B 30
2 B 40
2 C 50
2 D 30
2 D 50
REQUIRED OUTPUT
STUD_ID SUBJECT MARKS
1 A 40
1 B 40
1 C 40
1 D 50
2 A 45
2 B 40
2 C 50
2 D 50
Note: student may fails and re writes the exams and gets pass for second or third time. Here latest marks(last attempt) to the particular subject for each student need to get updated on suject.
Based on that the data set is sorted:
data test;
input stud_id subject $ marks;
datalines;
1 A 40
1 B 35
1 B 40
1 C 30
1 C 33
1 C 40
1 D 50
2 A 45
2 B 30
2 B 40
2 C 50
2 D 30
2 D 50
;
data new;
set test;
by stud_id subject;
if last.subject;
run;
Based on that the data set is sorted:
data test;
input stud_id subject $ marks;
datalines;
1 A 40
1 B 35
1 B 40
1 C 30
1 C 33
1 C 40
1 D 50
2 A 45
2 B 30
2 B 40
2 C 50
2 D 30
2 D 50
;
data new;
set test;
by stud_id subject;
if last.subject;
run;
Hello,
data have;
input stud_id subject $ marks;
datalines;
1 A 40
1 B 35
1 B 40
1 C 30
1 C 33
1 C 40
1 D 50
2 A 45
2 B 30
2 B 40
2 C 50
2 D 30
2 D 50
;
proc means data=have noprint nway ;
class stud_id subject;
var marks;
output out=maximum(drop=_freq_ _type_) max=marks;
run;
Join us for SAS Innovate 2025, our biggest and most exciting global event of the year, in Orlando, FL, from May 6-9. Sign up by March 14 for just $795.
Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.