4分钟
resampling
重采样resampling
指的是将时间序列从一个频率转换到另一个频率的处理过程。
- 将高频数据转换到低频数据称作降采样。降采样时,待聚合的数据不必拥有固定的频率,期望的频率(低频的)会自动划分聚合的
bin
的边界。这些bin
将时间序列拆分为多个片段。这些片段都是半开放的,一个数据点只能属于一个片段,所有的片段的并集组成了整个时间帧。在对数据降采样时,只需要考虑两样: - 各个区间哪边是闭合的
- 如何标记各个聚合
bin
,用区间的开头还是结尾 - 将低频数据转换到高频数据称作升采样。将数据转换到高频时,就不需要聚合了,而是插值,默认引入缺失值。插值的填充和填充方式与
fillna/reindex
的一样。 - 在对时间段
Period
进行重采样时,升采样稍微麻烦点,因为你必须决定:哪个高频区间代表原区间。就像asfreq
一样,convention
可以设置为'end'/'start'
有些重采样并不划分到上述两者之中。比如将W-WED
(每周三)转换到W-FRI
(每周五)。另外,由于Period
是时间区间,所以升采样和降采样的规则就比较严格:
- 降采样中,目标频率必须包含原频率。如
Day->Month
,目标频率为每月,原频率为每天。 - 升采样中,原频率必须包含目标频率。如
Day->Hour
,目标频率为每小时,原频率为每天。
如果不满足这些条件,则会引发异常。
学员评价