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

使用Pandas规整Excel表:将分钟级数据转为15分钟间隔采样

解决方案:保留15分钟整点的原始记录

嘿,我明白你的需求了——你不需要对15分钟窗口内的数据求和,只想精准保留那些分钟数为0、15、30、45的原始记录对吧?这其实不用resample求和,换个思路直接筛选就行,给你两种靠谱的方法:

方法一:直接筛选分钟数(推荐,完全保留原始数据)

这种方法直接从原数据中挑选符合时间条件的行,不做任何聚合操作,完美匹配你的需求:

import pandas as pd

# 读取Excel数据
data = pd.read_excel('file.xlsx')

# 确保Datetime列是pandas的datetime类型(避免读入时格式异常)
data['Datetime'] = pd.to_datetime(data['Datetime'])

# 筛选出分钟数为0、15、30、45的记录
filtered_data = data[data['Datetime'].dt.minute.isin([0, 15, 30, 45])]

# 保存结果到新Excel文件
filtered_data.to_excel('new_file.xlsx', index=False)

说明:如果你的数据是严格每分钟一条,这个方法会精准保留每个15分钟整点的那条原始记录,直接删除中间时段的数据,完全符合你的预期。

方法二:使用asfreq()确保严格时间间隔

如果需要确保最终结果是严格的15分钟时间序列(哪怕原数据中某个整点记录缺失,会保留时间戳并填充NaN),可以用这个方法:

import pandas as pd

data = pd.read_excel('file.xlsx')
data['Datetime'] = pd.to_datetime(data['Datetime'])

# 将Datetime设为索引,使用asfreq获取15分钟整点数据
data.set_index('Datetime', inplace=True)
filtered_data = data.asfreq('15T')

# 还原索引并保存
filtered_data.reset_index(inplace=True)
filtered_data.to_excel('new_file.xlsx', index=False)

说明:这个方法会强制生成连续的15分钟时间戳,适合需要严格对齐时间序列的场景;如果原数据无缺失,结果和方法一完全一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.09 21:17:43