嗨,我有一个如下所示的数据框:
ID date
1 01.01.2017
1 01.01.2017
1 01.04.2017
2 01.01.2017
2 01.01.2017
2 01.02.2017
我想要的是过滤日期差异的相关最小值和最大值为 3 天的 ID。最终的数据帧应该是这样的,因为只有 id 1 匹配条件:
ID date
1 01.01.2017
1 01.01.2017
1 01.04.2017
谢谢你。
您可以使用Groupby.filter
自定义lambda
函数来检查最大日期和最小值之间的差异是否为3
天数:
d = datetime.timedelta(days=3)
df.groupby('ID').date.filter(lambda x: (x.max() - x.min()) == d)
ID
1 2017-01-01
1 2017-01-01
1 2017-01-04
Name: date, dtype: datetime64[ns]
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句