仅对特定的一组数据值进行排名

时间:2018-07-26 16:00:17

标签: sas

如何仅基于类别中的一组特定值对数据进行排名?假设如果有基于同一客户/日期的类别2、4和5,那么5应该胜过4和2,4应该胜过2,5应该胜过2,依此类推。除此之外,任何其他类别都应该始终将其排名为1.(为简单起见,已修改值)。因此,对于(2/4/5)的任何类别,请检查王牌逻辑。任何其他类别,将其排名为1。谢谢!

想要

ClientName  Date      Category  Age  rank
A           1/1/2018  1         25    1
A           1/1/2018  2         25    3
A           1/1/2018  3         25    1
A           1/1/2018  4         25    2
A           1/1/2018  5         25    1
A           2/1/2018  2         25    1
B           3/1/2018  1         26    1
B           3/1/2018  3         26    1

我尝试过

proc rank data=test out=test2 ties=low descending;
  by clientname date;
   var category;
   ranks rank;
run;

0 个答案:

没有答案