📅  最后修改于: 2023-12-03 15:37:43.525000             🧑  作者: Mango
在数据处理过程中,往往需要将原始数据按照一定的时间间隔重新采样,以便于后续的统计分析或可视化。在 Python 中,使用 pandas 库提供的 resample 方法可以很方便地实现这一目的。
本文将介绍如何使用 pandas 的 resample 方法对时间序列数据进行重新采样,以及常用的参数和操作方式。
pandas 中的 resample 方法可以对时间序列数据进行重采样,并调整其采样频率。下面是一段示例代码:
import pandas as pd
import numpy as np
# 生成时间序列数据(每分钟一条记录)
date_rng = pd.date_range(start='1/1/2021', end='1/10/2021', freq='T')
df = pd.DataFrame(date_rng, columns=['date'])
df['data'] = np.random.randint(0,100,size=(len(date_rng)))
df = df.set_index('date')
# 以 5 分钟为间隔重新采样
df_resampled = df.resample('5T').sum()
print(df_resampled.head())
上述代码中,先生成了一个时间序列数据 df(含日期和数据两列),并将其以分钟为频率生成,然后使用 resample 方法,以 5 分钟为间隔重新采样,并对新的数据进行统计聚合,得到了 df_resampled 数据。
resample 方法的参数中,最常用的包括:
除了以上几个参数之外,还可以使用 on 参数指定按照某列进行重采样(比如按照一个区间编号列),以及 loffset 参数指定位移时间戳的方式。
使用 pandas 中的 resample 方法,可以方便地对时间序列数据进行重新采样,从而得到不同时间间隔的数据聚合结果。根据不同的需求,可以通过设置参数改变采样频率、聚合方法和数据填充方式等,得到符合要求的数据结果。