python实现采样函数_python中resample函数实现重采样和降采样代码
函數原型
resample(self, rule, how=None, axis=0, fill_method=None, closed=None, label=None, convention=‘start', kind=None, loffset=None, limit=None, base=0, on=None, level=None)
比較關鍵的是rule,closed,label下面會隨著兩個用法說明
降采樣
對時間數據細粒度增大,可以把每天的數據聚合成一周,可以求和或者均值的方式進行聚合
下面給出列子
我們看看上面代碼,就是先給出一個1-30號的series,l然后聚合成左閉右開的5個區間[1,8),[8,15),[15,22),[22-29),[29-5(下個月)),每個區間的值就為單個區間值之和。由于29號往后只有29號和30號有值,所以只有兩個值
下面我們看看label和closed的功能
上面的代碼,將closed改為了right,區間就變成了左開右閉,那么如果從區間還是(1,8],1就取不到,所以往前取,就是(25,1],(1,8],(8,15],(15,22],(22,29],(29,5]這6個區間
上面的代碼就可以看出label=right就是指label等于右區間的值,如果label=left就是指label等于左區間的值
重采樣
降低時間的細粒度,對于重采樣,主要是涉及到值的填充。有下面的三種填充方法
不填充。那么對應無值的地方,用NaN代替。對應的方法是asfreq。
用前值填充。用前面的值填充無值的地方。對應的方法是ffill或者pad。
用后值填充。對應的方法是bfill,b代表back。
下面給出代碼看一下
總結
重采樣和降采樣一般用在時間序列里面,合理的使用降低時間維度或者降低時間細粒度多可以成為好的特征。
以上這篇python中resample函數實現重采樣和降采樣代碼就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持。
總結
以上是生活随笔為你收集整理的python实现采样函数_python中resample函数实现重采样和降采样代码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 合泰单片机做电压表_启士 | 蓝桥杯零基
- 下一篇: python怎么一直循环_python