首页 > 解决方案 > 希望获得一列中两个值之间的最大差异并返回获胜者?

问题描述

TeamA  TeamB   City
12      18      12
17      15       5
19       8       7

df['diff'] = numpy.abs(data_frame['TeamA'] - data_frame['TeamB'])
max = data_frame['difference'].max()

我一直在寻找最大的差异。现在,我要做的是获得获胜的球队,在这种情况下应该是 A 队,然后获得与该胜利相关的城市编号。任何建议表示赞赏。

标签: pythonpandas

解决方案


尝试:

diff = df['TeamA'] - df['TeamB']

max_row = diff.abs().idxmax()

team = 'Team A' if  diff.loc[max_row] > 0  else 'Team B'

city = df.loc[diff.abs().idxmax(), 'City']

推荐阅读