我有一个如下所示的数据框: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 谢谢你。
2 回答
慕森卡
TA贡献1806条经验 获得超8个赞
您可以使用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]
添加回答
举报
0/150
提交
取消
