我试图从一个相关矩阵中创建一个列表(3个关联度最高的选项)。假设我有以下矩阵:
A B C D E
A 1.00 0.15 0.57 0.11 0.98
B 0.59 1.00 0.32 0.24 0.54
C 0.96 0.65 1.00 0.22 0.67
D 0.72 0.33 0.78 1.00 0.92
E 0.88 0.94 0.61 0.48 1.00
假设我对矩阵进行排序,根据B列得出最相关的矩阵,矩阵现在看起来如下:
^{pr2}$如您所见,矩阵已经过排序,以显示B列中最相关的对应项。然后我希望能够以列表的形式返回前3个相关字母,而忽略了顶行(B),因为这显然是1:1相关的。在
所以我希望top_correlated = ['E', 'C', 'D']
或者我希望我的列表是我的意思。在
和我所有的帖子一样,我意识到礼仪至少是为了在代码方面表现出一些努力,但和往常一样,我完全被难住了,所以我要在这里发帖。非常感谢任何帮助。在
不必对整个
^{pr2}$DataFrame
进行排序,您可以对列调用nlargest
,获取索引,并从第一个元素切片,因为它应该始终是它自己。在相关问题 更多 >
编程相关推荐