Sas Proc-Rank整个数据集
我试图为2个变量创建等级,然后将其相加以创建分数 问题:我需要对整个数据集进行排序(即,划分为k个分位数组,其中k=n)。 我现在使用proc rank来计算1个变量的秩。变量名为first,我想生成名为firstrank的秩Sas Proc-Rank整个数据集,sas,rank,Sas,Rank,我试图为2个变量创建等级,然后将其相加以创建分数 问题:我需要对整个数据集进行排序(即,划分为k个分位数组,其中k=n)。 我现在使用proc rank来计算1个变量的秩。变量名为first,我想生成名为firstrank的秩 proc rank data = moo out= outmoo; var firstrank; run; 我的输出看起来像 Obs first firstr
proc rank data = moo out= outmoo;
var firstrank;
run;
我的输出看起来像
Obs first firstrank
1 0.000 9.5
2 0.000 9.5
3 0.000 9.5
4 0.000 9.5
5 0.000 9.5
6 0.000 9.5
7 0.000 9.5
8 0.000 9.5
9 0.000 9.5
10 0.000 9.5
11 0.000 9.5
12 0.000 9.5
13 0.000 9.5
14 0.000 9.5
15 0.000 9.5
16 0.000 9.5
17 0.000 9.5
18 0.000 9.5
19 0.105 19.5
20 0.105 19.5
21 0.210 23.5
22 0.210 23.5
23 0.210 23.5
24 0.210 23.5
25 0.210 23.5
26 0.210 23.5
正如您所看到的,首先在变量中对各个关系的秩进行平均
我试图实现的是,first=0、firstrank=1、first=0.105、firstrank=2的所有值,依此类推。
有没有办法使用SAS proc rank来实现这一点?或者还有其他程序可以这样做吗?如果我理解您的问题,您需要TIES=densite选项(或者concure,它的别名)。看
你试过谷歌搜索
PROC-RANK
?我花了2分钟找到:这称为枚举:
data test;
do x = 1 to 8;
do y = 1 to 3;
output;
end;
end;
run;
proc rank data=test out=want ties=dense;
var x;
ranks r;
run;