Upload
vam1
View
214
Download
0
Embed Size (px)
Citation preview
8/19/2019 SAS Example Programs
1/3
SAS Example Programs
Student Results [using if then else]:
data Students;
infle datalines;input s_id sname $ Maths Physics Chemistry TotalMarks ;
datalines;
101 aaa 80 70 0 !10
10! """ #0 0 0 1#0
10% ccc & &0 &0 1&
10 ddd #& #0 8& !70
10& eee %0 !& %& #0
;
run;
data 'esult; set Students;
i( TotalMarks ) !&0 then *inal'esult + ,-istinction,;
else i( !01 .+ TotalMarks .+ !&0 then *inal'esult + ,*irst di/,;
else i( 101 .+ Totalmarks .+ !00 then *inal'esult + ,Second di/,;
else i( &1 .+ TotalMarks .+ 100 then *inal'esult + ,Third di/,;
else i( TotalMarks . &0 then *inal'esult + ,Poor,;
run;
proc print data + 'esult;
run;
output
Obs s_id sname Maths Physics Chemistry TotalMarks FinalResult
1 101 aaa 80 70 60 210 First div
2 102 bbb 90 60 40 190 Second div
3 103 ccc 65 50 50 165 Second div
4 104 ddd 95 90 85 270 Distinction
5 105 eee 30 25 35 90 Third div
Modifed Proram 2only 1 datastep proram3
data Students;
infle datalines;
input s_id sname $ Maths Physics Chemistry TotalMarks ;
i( TotalMarks )+ !&0 then *inal'esult + ,-istinction,;
else i( TotalMarks )+ !00 then *inal'esult + ,*irst di/,;
else i( Totalmarks )+ 100 then *inal'esult + ,Second di/,; else i( TotalMarks )+ &0 then *inal'esult + ,Third di/,;
8/19/2019 SAS Example Programs
2/3
else i( TotalMarks . &0 then *inal'esult + ,Poor,;
datalines;
101 aaa 80 70 0 !10
10! """ #0 0 0 1#0
10% ccc & &0 &0 1& 10 ddd #& #0 8& !70
10& eee %0 !& %& #0
;
run;
proc print data + Students;
run;
Students marks program [using ‘Do’ statement]
data Test;infle datalines;
input su"4 $ marks ;
datalines;
maths #0
physics 70
chemistry &0
"ioloy %
;
run;
data 5nnualTest; set Test; i( marks )+ 80 then do;
6rade + ,5, ; 'esult + ,-istinction,; end;
else i( marks )+ 0 then do;
6rade + ,, ; 'esult + ,5"o/e 5/, ; end;
else i( marks )+ %& then do;
6rade + ,C, ; 'esult + ,elo 5/, ; end;
else i( marks . %& then do;
6rade + ,-, ; 'esult + ,*ail, ; end;
run;
proc print data + 5nnualTest; (ormat 'esult $char1!9 ;
run;
output
Obs subj marks rade Result
1 maths 90 A Distinction
2 phsics 70 ! Above Av"
3 chemistr 50 # !e$o% Av"
8/19/2019 SAS Example Programs
3/3
Obs subj marks rade Result
4 bio$o" 34 D Fai$
Running Total Program
data dailyre/enue;
infle datalines;
input day $ re/enue;
datalines;
mon 1000
tue !&00
ed %000thu 000
(ri &000
;
run;
data Total'e/; set dailyre/enue;
total : re/enue;
run;
proc print data + Total'e/;
run;
output
Obs day re!enue total
1 mon 1000 1000
2 t&e 2500 3500
3 %ed 3000 6500
4 th& 4000 10500
5 'ri 5000 15500