使用pandas对时间序列数据进行等距重采样处理

我们的目标是将原始数据处理成每隔30秒一个数据样本,且每个30秒内使用均值计算,如下图所示:
在这里插入图片描述
代码:

import pandas as pd


# 转化为时间戳格式
df.loc[:, 'datetime'] = pd.to_datetime(df.loc[:, 'datetime'])

# 按时间排序
df = df.sort_values(by='datetime')

# 将‘time’列转化为索引
df = df.set_index('datetime')

# >>> 关键代码:时间粒度均匀化 <<<
df = df.resample('T').mean()  # 也可以取.max()或者.min()

'''
说明:
- 参数说明:D天,H小时,T分钟,S秒,T==60S,A年,M月,W周

- 无需担心不同的文件在重采样后会出现时间错位的现象,即A、B文件都是每隔30重采样一次,但A文件是从00:00秒开始,而B文件是从00:04秒开始,
这种现象是不会发生的,放心使用即可,resample函数会自动对齐的。


'''
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值