求助:数据排序?
请教:有一些数据,如下:
data a; /*原始数据,变量名为 d0 到 d9*/
input d0 d1 d2 d3 d4 d5 d6 d7 d8 d9;
cards;
1 3 0 6 9 7 4 2 8 5
10 19 2 8 6 15 3 14 18 11
9 2 10 5 11 3 4 8 1 6
;
run;
data a1;
set a;
px0=ordinal(1,of d0-d9); /*按从小到大顺序排列d0—d9*/
px1=ordinal(2,of d0-d9);
px2=ordinal(3,of d0-d9);
px3=ordinal(4,of d0-d9);
px4=ordinal(5,of d0-d9);
px5=ordinal(6,of d0-d9);
px6=ordinal(7,of d0-d9);
px7=ordinal(8,of d0-d9);
px8=ordinal(9,of d0-d9);
px9=ordinal(10,of d0-d9);
array as1{10} d0-d9;
array as2{10} px0-px9;
array as3{10} pxwz_d0-pxwz_d9;
do i1=1 to 10;
if as1{i1}=as2{i1} then as3{i1}=i1; /*是想得到:d0在由小到大的排序中出现在第几位,d1出现在第几位。。。*/
end;
run;
求助:这程序不对,该如何做?
谢谢!!!