如何從pandas數據框(餘弦相似度矩陣)找到第二個max或max where index!=列?我可以遍歷每個列,並完成指標!=列,但我相信有一個更好的辦法...如何從熊貓數據框(餘弦相似度矩陣)中找到第二個最大值
import pandas as pd
cos = pd.DataFrame([
[ 1. , 0.17404038, 0.36849397],
[ 0.17404038, 1. , 0.20505339],
[ 0.36849397, 0.20505339, 1. ]
])
cos.columns = ['A', 'B', 'C']
cos.index = ['A', 'B', 'C']
COS看起來像這樣
A B C
A 1.000000 0.174040 0.368494
B 0.174040 1.000000 0.205053
C 0.368494 0.205053 1.000000
剔除其中的值是1的細胞,我想要的結果是
Col1 Col2
0 A C
1 B C
2 C A
我可以這樣做,並獲得第二個max而不是max嗎?
results = cos.idxmax().reset_index()
results.columns = ['Col1', 'Col2']
results
Col1 Col2
0 A A
1 B B
2 C C
爲什麼不把'1'設置爲'-1',然後得到'max'? – EdChum