你只需要argmax()(现在称为idxmax)函数。这很简单:
>>> import pandas
>>> import numpy as np
>>> df = pandas.DataFrame(np.random.randn(5,3),columns=['A','B','C'])
>>> df
A B C
0 1.232853 -1.979459 -0.573626
1 0.140767 0.394940 1.068890
2 0.742023 1.343977 -0.579745
3 2.125299 -0.649328 -0.211692
4 -0.187253 1.908618 -1.862934
>>> df['A'].argmax()
3
>>> df['B'].argmax()
4
>>> df['C'].argmax()
1
此功能已更新为idxmaxPandas API中的名称,但从Pandas 0.16开始,argmax仍然存在并执行相同的功能(尽管看起来比运行速度慢idxmax)。
您也可以使用numpy.argmax,例如numpy.argmax(df['A'])- 它提供与两个pandas函数中的任何一个相同的东西,并且看起来至少与idxmax粗略观察中一样快。
以前(如评论中所述)它似乎argmax作为单独的函数存在,其在最大元素的行位置的索引内提供整