我计算了一个数据帧的余弦相似性,如下所示:
ciiu4n4 A0111 A0112 A0113
A0111 14 7 6
A0112 16 55 3
A0113 15 0 112
使用此代码:
^{pr2}$我得到一个这样的数组:
[[ 1. 0.95357118 0.95814892 ]
[ 0.95357118 1. 0.89993795 ]
[ 0.95814892 0.89993795 1. ]]
但是,我需要的结果是一个类似于原始数据帧的数据帧。我不能手动操作,因为原始数据帧是600 x 600。在
我需要的结果应该类似于:
ciiu4n4 A0111 A0112 A0113
A0111 1. 0.95357118 0.95814892
A0112 0.95357118 1. 0.89993795
A0113 0.95814892 0.89993795 1.
我建议你稍微改变一下方法。不需要删除任何列。相反,将第一列设置为索引,计算余弦相似度,并将结果数组分配回dataframe。在
^{pr2}$上面的解决方案只有在行数和列数(不包括第一行)相同的情况下才有效。所以,这里有另一个可以推广到任何场景的解决方案。在
或者,使用
df.insert
-相关问题 更多 >
编程相关推荐