为什么这两个代码片段都可以在熊猫中使用idxmax和idxmax()?

时间:2019-01-23 12:22:34

标签: pandas callable

我注意到两个工作:

i_max = df.groupby(['driver'])['delay'].idxmax
df.iloc[i_max]

i_max = df.groupby(['driver'])['delay'].idxmax()
df.iloc[_imax]

怎么可能?为什么会这样?有什么区别?什么时候应该使用哪个?有关系吗?

这是一个更大的样本:

import numpy as np
lst = list(np.array([200.4, 143.5, 1252, 1357, 52.98] * 3) + np.arange(15))
dict = {"country": ["Brazil", "Russia", "India", "China", "South Africa"] * 3,
       "capital": ["Brasilia", "Moscow", "New Dehli", "Beijing", "Pretoria"] * 3,
       "area": [8.516, 17.10, 3.286, 9.597, 1.221] * 3,
       "population": lst }

import pandas as pd
brics = pd.DataFrame(dict)
#print(brics)
i_max = brics.groupby('country')['population'].idxmax()
result = brics.iloc[i_max]
print(result)
i_max = brics.groupby('country')['population'].idxmax
result = brics.iloc[i_max]
print(result)

0 个答案:

没有答案