In a shcool there are 1000 students. After completion of
every test in 6 subjects , each subject teacher submit the
marks of every student at different times and loaded in the
database commonly. How will you seperate the top two
subject marks for each each studet using SAS?
Answers were Sorted based on User's Feedback
/*
Bakul Shah
6/May/2009
*/
Data A ;
Array N{6};
Input Name $ N{*} ;
Call SortN(of N{*}); /* Sort for Intergers */
Put @5 Name $ @10 N{6} 3. +2 N{5} 3.;/* 6th and 5th */
DataLines;
David 76 81 65 87 78 98
Manisha 100 91 67 86 87 81
Bob 83 93 76 88 96 72
;
Run;
*;
| Is This Answer Correct ? | 6 Yes | 0 No |
Answer / ashutosh
slightly modified
data nrate;
set rating;
array r{6} a -- f;
do i=1 to 6;
*for first maximum;
if r{i}>max1 then
do
max2=max1;
max1=r{i};
end;
*for second maximum;
if r{i}>max2 and r{i}<max1 then max2=r{i};
end;
proc print data=nrate;
run;
| Is This Answer Correct ? | 3 Yes | 1 No |
Answer / ashokmudrathi
data rating;
input a b c d e f;
cards;
1 54 21 5 7 2
2 21 54 67 3 5
;
*here 1000 observations with above variables;
data nrate;
set rating;
array r{6} a -- f;
do i=1 to 6;
*for first maximum;
if r{i}>max1 then max1=r{i};
*for second maximum;
if r{i}>max2 and r{i}<max1 then max2=r{i};
end;
proc print;
run;
| Is This Answer Correct ? | 4 Yes | 3 No |
Answer / santosh reddy
data x;
set rating;
max1=max(of a--f);
array aa(6) a--f;
do i=1 to 6;
if aa(i)>max2 and aa(i)<max1 then max2=aa(i);
end;
run;
| Is This Answer Correct ? | 0 Yes | 0 No |
Answer / basha
just i imagine data in data base is;
like below output dataset:
data rating;
input name $ a b c d e f;
cards;
raj 1 54 21 5 7 2
jar 2 21 54 67 3 5
;
answer:
proc sort data=rating;
by name;
run;
proc transpose data=rating out=marks(rename=(col1=marks
_name_=subjects) drop=_label_);
by name;
run;
proc sort data=marks;
by descending marks name;
run;
data jj;
set marks;
by name;
if first.name then ind=0;
ind+1;
run;
proc print;
where ind in(1,2);
run;
| Is This Answer Correct ? | 2 Yes | 3 No |
Answer / hahaha
proc sort data=marks;
by name descending marks ;/*for answer 2, just change the
order*/
| Is This Answer Correct ? | 0 Yes | 2 No |
Describe the ways in which you can create a macro variable?
Describe how you would pass data to macro.
name the scheduler for scheduling job and explain the scheduler? : Sas-di
Give some examples where proc report’s defaults are same as proc print’s defaults?
what is syntax of proc merge ?
is there any differnce between proc means and proc summary?
Mention the difference between ceil and floor functions in sas?
what is the difference btw proc means and proc univariate?
How would you define the end of a macro? : sas-macro
How would you code the criteria to restrict the output to be produced?
Which command is used to perform sorting in sas program?
WHAT IS LAG FUNCTION ? WHERE CAN YOU IMPLEMENT THIS FUNCTION?