Sas Proc-Rank整个数据集

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

我试图为2个变量创建等级,然后将其相加以创建分数

问题:我需要对整个数据集进行排序(即,划分为k个分位数组,其中k=n)。

我现在使用proc rank来计算1个变量的秩。变量名为first,我想生成名为firstrank的秩

    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;