📅  最后修改于: 2023-12-03 15:19:21.169000             🧑  作者: Mango
在处理时间序列数据时,经常需要对数据进行重采样。数据重采样功能可以将数据从一个频率转换为另一个频率。使用pandas库的dataframe.resample()方法可以轻松完成重采样操作。
pandas库的dataframe.resample()方法支持多种重采样的类型:
pandas库的dataframe.resample()方法含有多个参数,具体如下:
下面是一个简单的示例代码,演示数据降采样操作:
import pandas as pd
# 新建sample数据,并设置时间索引
date_rng = pd.date_range(start='1/1/2020', end='1/10/2020', freq='H')
df = pd.DataFrame(date_rng, columns=['date'])
df['data'] = np.random.randint(0,100,size=(len(date_rng)))
df.set_index('date', inplace=True)
# 降采样,将每小时数据聚合为每天数据
df_daily = df.resample('D').mean()
print(df_daily)
输出结果:
data
date
2020-01-01 45.541667
2020-01-02 54.770833
2020-01-03 48.625000
2020-01-04 44.250000
2020-01-05 43.833333
2020-01-06 50.791667
2020-01-07 52.208333
2020-01-08 45.333333
2020-01-09 50.708333
2020-01-10 59.791667
以上代码示例将数据从每小时聚合为每天的数据,并计算每一天的数据平均值。可见,dataframe.resample()方法非常容易实现对数据的重采样操作。