SAS中文论坛
标题:
请教高手:一个排序的问题
[打印本页]
作者:
shiyiming
时间:
2008-1-31 17:46
标题:
请教高手:一个排序的问题
假设有三只股票A,B,C,每天有一个累加值的报表;前三天数据如下:
股票 累加值
a 0
b 0
c 1
a 0
b 1
c 1
a 2
b 2
c 1
现希望对每天的累加值按照降序排列,则前三天排序结果期望如下:
第一天:c a b
第二天:c b a
第三天:b a c
注:第二天是c b a的原因:尽管第二天b和c累计值都是1,但是由于c先于b到达1,所以c排前.
请问如何实现?多谢了!
作者:
shiyiming
时间:
2008-2-1 13:56
标题:
Re: 请教高手:一个排序的问题
假如数据整成行的,做起来可能容易些,下面举个列子
data a;
input x $ day1 day2 day3;
cards;
a 0 0 2
b 0 1 2
c 1 1 1
;
run;
*** 第一天 ***;
proc sort data=a out=day1;
by descending day1;
run;
*** 第二天 ***;
proc sort data=a out=day2;
by descending day2 descending day1;
run;
*** 第三天 ***;
proc sort data=a out=day3;
by descending day3 descending day2 descending day1;
run;
至于更多天的,做成一个宏就行了
欢迎光临 SAS中文论坛 (https://mysas.net/forum/)
Powered by Discuz! X3.2