我有下面的数据集,我想返回按year分组的vol的 minimum,但我还想知道这个最小值出现在哪一天(date列),这是更大函数的一部分。对于下面的示例,返回值应为:
year
vol
date
1997-07-14 1162876
我尝试的第一件事是:
df_grouped_vol = pandas_df.groupby(pandas_df['year']).min()[['date', 'vol']]
0md85ypi1#
IIUC,将pandas.DataFrame.groupby与pandas.Series.idxmin配合使用:
pandas.DataFrame.groupby
pandas.Series.idxmin
g = df.groupby(by="year") out = df.loc[g["vol"].idxmin(), ["date", "vol"]].squeeze().values
输出:
for e in out: print("{} {}".format(*e)) #1997-07-14 1162876
1条答案
按热度按时间0md85ypi1#
IIUC,将
pandas.DataFrame.groupby
与pandas.Series.idxmin
配合使用:输出: