Я заметил обе работы:
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)