python 时间序列数据 重采样

本文详细介绍了如何在Python中使用pandas库进行时间序列数据的降采样(如将日度数据转为周度或月度数据),以及升采样操作(包括处理缺失值和使用asfreq()方法)。通过实例演示了降采样时求和操作,并展示了如何将每周数据扩展到每日数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

python 时间序列数据 重采样

文章目录



🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ

重采样:指将时间序列数据从一个频率转为另一个频率的过程。
重采样可以分为

降采样:高频率到低频率。

升采样:低频率到高频率。

升采样后会产生缺失值。相比而言降采样更为常用。


降采样

import pandas as pd
import numpy as np
# 创建日度数据100条
data1 = pd.DataFrame(np.random.uniform(10, 50, (100, 1)), index=pd.date_range('20220101', periods=100), columns=["value"])
print(data1)

          在这里插入图片描述


降采样,转为10日数据并求和

data2 = data1.resample('10D').sum()
print(data2)

          在这里插入图片描述


降采样,转为月度数据 并求和

data3 = data1.resample('M').sum()
print(data3)

          在这里插入图片描述


升采样

升采样后需要使用asfreq()方法,才能使升采样后的数据转为DataFrame格式,新增的数据都显示为空值。

首先准备一组数据。

data4 = pd.DataFrame(np.random.randint(1000,4000,size=(4,4)),index=pd.date_range('1/1/2022', periods=4, freq='W-WED'), columns=["北京","上海","广州","深圳"])
print(data4)

          在这里插入图片描述


print(data4.resample('D').asfreq())

         在这里插入图片描述


🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

侯小啾

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值