Hi Everyone,
I have a start variable having value 1.
When value =1, I want to run the below 2 data steps.
Of course, I can run the whole process on every single record but it is not optimal.
I appreciate it if you could help me.
HHC
data have; input start order value; datalines; 0 1 5 0 2 2 0 3 4 0 4 4 0 5 5 0 6 2 0 7 7 0 8 1 0 9 13 0 1 10 5 0 1 56 0 2 26 0 3 46 0 4 46 0 5 18 0 6 58 0 7 8 0 8 2 0 9 100 1 10 5 ; run;
IF START=1 THEN DO THE FOLLOWING PROCESS
data want;
set have; drop aa1-aa10; array a{0:9} aa1-aa10; retain aa:; pct_60=largest((10-10*60/100+1),of a{*}); pct_70=largest((10-10*70/100+1),of a{*}); pct_80=largest((10-10*80/100+1),of a{*}); pct_90=largest((10-10*90/100+1),of a{*}); a{mod(_n_,10)}=value; run;
data want; set want; drop pct_25-pct_100 ; if value>=pct_90 then ROC_rank=5; else if value>=pct_80 then ROC_rank=4; else if value>=pct_70 then ROC_rank=3; else if value>=pct_60 then ROC_rank=1.5; else ROC_rank=0.1; run;
... View more