来自多个排名列表的总体排名

机器算法验证 统计学意义 排行 估值
2022-01-29 17:28:53

我浏览了很多网上可用的文献,包括这个论坛,没有任何运气,希望有人能帮助我解决我目前面临的统计问题:

我有 5 个排名数据列表,每个列表包含 10 个项目,从第 1 位(最佳)到第 10 位(最差)排名。出于上下文的考虑,每个列表中的 10 个项目都是相同的,但由于用于确定其排名的技术不同,因此排名顺序不同。

示例数据:

            List 1      List 2      List 3     ... etc
Item 1     Ranked 1    Ranked 2    Ranked 1     
Item 2     Ranked 3    Ranked 1    Ranked 2
Item 3     Ranked 2    Ranked 3    Ranked 3
... etc

我正在寻找一种解释和分析上述数据的方法,以便我得到一个最终结果,显示基于每个测试及其位置的每个项目的总体排名,例如

Result
Rank 1 = Item 1
Rank 2 = Item 3
Rank 3 = Item 4
... etc

到目前为止,我已经尝试通过执行 Pearson 的相关性、Spearman 的相关性、Kendall Tau 的 B 和弗里德曼测试来解释这些信息。然而,我发现,这些结果通常与我的列表配对(即比较列表 1 与列表 2,然后将列表 1 与列表 3 进行比较……等等),或者产生了诸如卡方、P 值等关于整体的结果数据。

有谁知道我如何以统计学上合理的方法(在研究生/博士适用水平)解释这些数据,以便我可以理解总体排名,表明列表中每个项目在 5 次测试中的重要性?或者,如果我可以研究另一种类型的技术或统计测试,我将不胜感激任何提示或指导。

(可能还值得注意的是,我还执行了更简单的数学技术,例如求和、平均、最小 - 最大测试等,但在这个级别上,我觉得这些在统计上不够重要)。

任何帮助或建议将不胜感激,感谢您的宝贵时间。

4个回答

我不知道你为什么要研究相关性和类似的措施。似乎没有任何关联。

相反,有许多选项,没有一个比另一个更好,但取决于你想要什么:

取平均排名,然后对平均值进行排名(但这会将数据视为区间)

取中位数排名,然后对中位数进行排名(但这可能会导致平局)

取每个项目获得的第一名票数,并以此为基础对其进行排名

最后一票的数量,并据此对它们进行排名(显然是相反的)。

根据您认为合理的方式创建一些加权的排名组合。

正如其他人指出的那样,您可能会追求很多选择。我推荐的方法是基于平均排名,即彼得的第一个提议。

在这种情况下,可以通过两步统计检验来检验最终排名的统计重要性。这是一个非参数程序,由弗里德曼检验和相应的事后检验Nemenyi 检验组成两者都是基于平均排名。Friedman 检验的目的是拒绝原假设并得出项目之间存在一些差异的结论。如果是这样,我们继续进行 Nemenyi 测试以找出哪些项目实际上不同。(我们不直接从事后检验开始,以避免偶然发现意义。)

更多细节,例如这两个测试的临界值,可以在Demsar 的论文中找到

使用 Tau-x(其中“x”指的是“eXtended”Tau-b)。Tau-x 是 Kemeny-Snell 距离度量的相关等价物——被证明是满足距离度量的所有要求的排序项目列表之间的唯一距离度量。参见 Kemeny 和 Snell 的“社会科学中的数学模型”的第 2 章,以及“A New Rank Correlation Coefficient with Application to the Consensus Ranking Problem”,Edward Emond,David Mason,Journal of Multi-Criteria Decision Analysis,11:17- 28(2002 年)。

我(好吧,谷歌)找到了一篇论文,它对组合排名列表的方法进行了基准测试:

Li, X.、Wang, X. 和 Xiao, G.,2019 年。基因组应用中部分和顶级列表的等级聚合方法的比较研究。生物信息学简报,20(1),pp.178-189。https://doi.org/10.1093/bib/bbx101

他们使用两个 R 包: TopKLists:https ://cran.r-project.org/web/packages/TopKLists/index.html RobustRankAggreg :https ://cran.r-project.org/web/packages/RobustRankAggreg/index .html