首页 > 解决方案 > 如何根据排序算法在熊猫上获得获胜者选民

问题描述

这是我的数据

No   Candidate_A    Candidate_B   Candidate_C
1              8              9            12
2             18              9            12
3              9              9             7

这是我想要的结果,逻辑是Candidate_A超过Candidate_BCandidate_B获胜,如果不是Candidate_A,基本上它只是排序算法

No   Candidate_A    Candidate_B   Candidate_C     Result
1              8              9            12     Candidate_C     
2             18              9            12     Candidate_A
3              9              9             7     Candidate_A

标签: pythonpandassortingdataframe

解决方案


DataFrame.iloc与 一起使用DataFrame.idxmax

df['Res'] = df.iloc[:, 1:].idxmax(axis=1)
#if first column is index
#df['Res'] = df.idxmax(axis=1)
print (df)
   No  Candidate_A  Candidate_B  Candidate_C          Res
0   1            8            9           12  Candidate_C
1   2           18            9           12  Candidate_A
2   3            9            9            7  Candidate_A

推荐阅读