找到预期列表的最近列表的最佳方法是什么?

时间:2018-03-07 08:35:01

标签: data-analysis

我目前正在开发一个程序,我尝试通过实验提出元素的排序,然后与给定的顺序进行比较。例如:

实验:A,C,B,F,E,D 给定:A,B,C,D,E,F

最后,我试图找到一些指标来衡量我的实验排序与给定排序的接近程度。我知道所有相同的元素都会出现在两者中。正确位置的元素数量除以列表中元素的总数,我能做的最好吗?谢谢!

1 个答案:

答案 0 :(得分:1)

我认为这很大程度上取决于你如何定义两个序列之间的相似性。我会给你一些想法,然后定义相应的距离函数。

  1. 正确的位置很重要:在这种情况下,您只需计算正确定位元素的数量(正如您在问题中提出的那样)
  2. 与所需位置的差异很重要:您可以将实验中的位置差异与每个角色的给定序列中的位置相加
  3. 元素之间的排名很重要:在这里,您可以计算出正确顺序的元素对数量(类似于Kendall rank correlation)。除此之外还有一些rank correlation measures
  4. 将一个列表转换为另一个列表的成本:在这种情况下,您必须计算交换的最小数量,以便从一个列表到另一个列表。如果您还关心元素距离其所需位置的距离,则只能允许相邻元素的交换。计算这个,有点复杂,但这geeksforgeeks可能会有所帮助。
  5. 如果您希望介于0和1之间,则必须对结果进行标准化。我相信还有更多,这些只是我能从脑海中想到的那些。