我在excel电子表格中有一些类似于此的排名数据。
1.3
1.3
1.3
1.4
1.6
1.6
1.7
1.8
1.9
2
2
2.3
2.3
2.3
2.4
2.7
3.1
3.3
3.3
3.4
3.4
4
4.2
4.5
4.7
4.9
5.8
6.1
6.7
我正在为Mann-Whitney U-test制作一个计算器,为此我需要对这些样本进行排名,在Excel中使用= RANK()函数就足够简单,但我需要在队列中解决关系问题为了测试。 Mann-Whitney方法涉及取平均排名。例如,我的前3个值是1.3,所以我需要excel将所有这三个值分配为(1 + 2 + 3)/ 3(= 2)的等级。目前,= RANK()函数只将所有3都排列为1.
我已经看到一些类似的问题在这里使用IF命令解决但是在将它们应用到我的数据时遇到了麻烦。
任何帮助都会很受欢迎。
谢谢,
山姆
答案 0 :(得分:2)
您使用的是哪个版本的Excel?如果您有Excel 2010
或更高版本,那么有一个特定的功能,RANK.AVG
,例如如果您的数据位于A2:A30
,请使用B2中的此公式向下复制以按要求排名
=RANK.AVG(A2,A$2:A$30,1)
在早期版本的Excel中,您可以使用此公式为您提供相同的结果
=RANK(A2,A$2:A$30,1)+(COUNTIF(A$2:A$30,A2)-1)/2
答案 1 :(得分:0)
你可以欺骗一点,以获得不同等级的重复。您将需要一个辅助列
我将假设数字列表从@ A1开始......
在B1中输入公式=A1+ROW()/10000
- 这将在数字上添加少量 - 不足以将其放入下一个值,但足以区分值
在C1中,输入公式=RANK(B1,$B$1:$B$29,1)
以获得新的排名,没有重复。
然后复制B1& C1下来完成表格。如果您不想显示中间单元格,则可以隐藏B列