You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何按0/15/30/45分钟间隔过滤DataFrame的datetime列?

解决方法

你可以直接通过提取datetime列的分钟数来筛选符合条件的记录,有两种简洁的实现方式:

方法一:使用isin匹配目标分钟数

假设你的datetime列名为timestamp,直接判断分钟数是否在[0,15,30,45]列表中:

filtered_df = df[df['timestamp'].dt.minute.isin([0, 15, 30, 45])]

方法二:使用模运算简化判断

因为目标分钟数都是15的倍数,用分钟数对15取模,结果为0的就是符合要求的记录:

filtered_df = df[df['timestamp'].dt.minute % 15 == 0]

关于pd.date_range的说明

你之前看到的pd.date_range(start, freq='15T', periods=len(df))是用来生成连续的15分钟间隔时间序列的,一般用于创建时间索引或者对齐数据,和你从已有数据中筛选特定分钟记录的需求不匹配,所以不适用。

内容的提问来源于stack exchange,提问作者rish

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 21:01:05