我有的
用户-用户相似度矩阵,其中某些行具有重复的值和NaN
userId 316 320 359 370 910
userId
316 1.0 0.500000 0.500000 0.500000 NaN
320 0.5 1.000000 0.242837 0.019035 0.031737
359 0.5 0.242837 1.000000 0.357620 0.175914
370 0.5 0.019035 0.357620 1.000000 0.317371
910 NaN 0.031737 0.175914 0.317371 1.000000
我想要的是
我想对每行的相似性分别进行排名.像这样:
userId 316 320 359 370 910
userId
316 1 2 3 4 NaN
320 2 1 3 5 1
359 2 4 1 3 5
370 2 5 3 1 4
910 NaN 4 3 2 1
相同值之间的等级并不重要.但这必须是一个独特的价值.并且必须保留NaN.
我累了
我尝试了df.rank(ascending = False,axis = 1)(doc),该方法无法为我提供明显的等级值.
我也尝试了scipy.stats.rankdata(doc),但它不能保留NaN.