pandas 时间序列resample
Posted 罗兵の水库
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pandas 时间序列resample相关的知识,希望对你有一定的参考价值。
resample与groupby的区别:
resample:在给定的时间单位内重取样
groupby:对给定的数据条目进行统计
函数原型:
DataFrame.resample(rule, how=None, axis=0, fill_method=None, closed=None, label=None, convention=‘start‘, kind=None, loffset=None, limit=None, base=0)
其中,参数how已经废弃了。
下面开始练习
import numpy as np import pandas as pd
Start by creating a series with 9 one minute timestamps.
index = pd.date_range(‘1/1/2000‘, periods=9, freq=‘T‘) series = pd.Series(range(9), index=index)
Downsample the series into 3 minute bins and sum the values of the timestamps falling into a bin.
series.resample(‘3T‘).sum()
To include this value close the right side of the bin interval as illustrated in the example below this one.
series.resample(‘3T‘, label=‘right‘).sum()
Downsample the series into 3 minute bins as above, but close the right side of the bin interval.
series.resample(‘3T‘, label=‘right‘, closed=‘right‘).sum()
Upsample the series into 30 second bins.
series.resample(‘30S‘).asfreq()
Upsample the series into 30 second bins and fill the NaN values using the pad method.
series.resample(‘30S‘).pad()
Upsample the series into 30 second bins and fill the NaN values using the bfill method.
series.resample(‘30S‘).bfill()
Pass a custom function via apply
def custom_resampler(array_like): return np.sum(array_like)+5 series.resample(‘3T‘).apply(custom_resampler)
附:常见时间频率
A year
M month
W week
D day
H hour
T minute
S second
以上是关于pandas 时间序列resample的主要内容,如果未能解决你的问题,请参考以下文章
pandas使用resample进行不同粒度下的时间特征重构实战:构建时间维度统计特征
pandas df.resample('D').sum() 返回 NaN
Python 之 Pandas 生成时间戳范围Pandas 的时期函数 Period() 和时间序列 - 重采样 resample