小编bre*_*a89的帖子

返回 pandas groupby 中的第一个日期

我尝试创建一个新功能来显示给定组的最小(最低)数据。

我的数据如下:

动物ID 周期号 提要日期 开始日期周期
1 A 2021-02-06 2020-09-20
1 A 2021-02-10 2020-09-20
1 2021-02-14 2020-09-20
2 A 2021-02-20 2020-09-30
2 A 2021-02-21 2020-09-30

对于每一个animal_idcycle_nr,我都想返回第一个feed_date

我想要的 df 看起来像这样

动物ID 周期号 提要日期 开始日期周期 首次推送日期
1 A 2021-02-06 2020-09-20 2021-02-06
1 A 2021-02-10 2020-09-20 2021-02-06
1 2021-02-14 2020-09-20 2021-02-14
2 A 2021-02-20 2020-09-30 2021-02-20
2 A 2021-02-21 2020-09-30 2021-02-20

我尝试了多种方法,但这些选项都没有返回正确的值:

df['first_feed_date'] = df.groupby(['animal_id', 'cycle_nr']).agg({'feed_date' : np.min})
df['first_feed_date'] = df.loc[df.groupby(['animal_id', 'cycle_nr'])['feed_date'].idxmin()]
df['first_feed_date']= df.groupby(["animal_id", "cycle_nr"])["feed_date"].transform(min) …
Run Code Online (Sandbox Code Playgroud)

python pandas pandas-groupby

2
推荐指数
1
解决办法
1039
查看次数

标签 统计

pandas ×1

pandas-groupby ×1

python ×1