91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python中resample函數實現重采樣和降采樣代碼

發布時間:2020-10-21 03:50:40 來源:腳本之家 閱讀:298 作者:sorrythanku 欄目:開發技術

函數原型

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下面會隨著兩個用法說明

降采樣

對時間數據細粒度增大,可以把每天的數據聚合成一周,可以求和或者均值的方式進行聚合

下面給出列子

times=pd.date_range('20180101',periods=30)
ts=pd.Series(np.arange(1,31),index=times)
ts
2018-01-01   1
2018-01-02   2
2018-01-03   3
2018-01-04   4
2018-01-05   5
2018-01-06   6
2018-01-07   7
2018-01-08   8
2018-01-09   9
2018-01-10  10
2018-01-11  11
2018-01-12  12
2018-01-13  13
2018-01-14  14
2018-01-15  15
2018-01-16  16
2018-01-17  17
2018-01-18  18
2018-01-19  19
2018-01-20  20
2018-01-21  21
2018-01-22  22
2018-01-23  23
2018-01-24  24
2018-01-25  25
2018-01-26  26
2018-01-27  27
2018-01-28  28
2018-01-29  29
2018-01-30  30
Freq: D, dtype: int32
ts_7d=ts.resample('7D').sum()
ts_7d
2018-01-01   28
2018-01-08   77
2018-01-15  126
2018-01-22  175
2018-01-29   59
dtype: int32

我們看看上面代碼,就是先給出一個1-30號的series,l然后聚合成左閉右開的5個區間[1,8),[8,15),[15,22),[22-29),[29-5(下個月)),每個區間的值就為單個區間值之和。由于29號往后只有29號和30號有值,所以只有兩個值

下面我們看看label和closed的功能

ts_7d=ts.resample('7D',closed='right',label='left').sum()
ts_7d

Out[14]:
2017-12-25   1
2018-01-01   35
2018-01-08   84
2018-01-15  133
2018-01-22  182
2018-01-29   30

上面的代碼,將closed改為了right,區間就變成了左開右閉,那么如果從區間還是(1,8],1就取不到,所以往前取,就是(25,1],(1,8],(8,15],(15,22],(22,29],(29,5]這6個區間

ts_7d=ts.resample('7D',closed='right',label='right').sum()
ts_7d

Out[15]:
2018-01-01   1
2018-01-08   35
2018-01-15   84
2018-01-22  133
2018-01-29  182
2018-02-05   30
dtype: int32

上面的代碼就可以看出label=right就是指label等于右區間的值,如果label=left就是指label等于左區間的值

重采樣

降低時間的細粒度,對于重采樣,主要是涉及到值的填充。有下面的三種填充方法

不填充。那么對應無值的地方,用NaN代替。對應的方法是asfreq。

用前值填充。用前面的值填充無值的地方。對應的方法是ffill或者pad。

用后值填充。對應的方法是bfill,b代表back。

下面給出代碼看一下

ts_7h_asfreq = ts.resample('7H').asfreq()
print(ts_7h_asfreq)

ts_7h_ffill = ts.resample('7H').ffill()
print(ts_7h_ffill)

ts_7h_bfill = ts.resample('7H').bfill()
ts_7h_bfill


2018-01-01 00:00:00  1.0
2018-01-01 07:00:00  NaN
2018-01-01 14:00:00  NaN
2018-01-01 21:00:00  NaN
Freq: 7H, dtype: float64
2018-01-01 00:00:00  1
2018-01-01 07:00:00  1
2018-01-01 14:00:00  1
2018-01-01 21:00:00  1
Freq: 7H, dtype: int32
Out[24]:
2018-01-01 00:00:00  1
2018-01-01 07:00:00  2
2018-01-01 14:00:00  2
2018-01-01 21:00:00  2
Freq: 7H, dtype: int32

總結

重采樣和降采樣一般用在時間序列里面,合理的使用降低時間維度或者降低時間細粒度多可以成為好的特征。

以上這篇python中resample函數實現重采樣和降采樣代碼就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

禄丰县| 资兴市| 滨州市| 界首市| 文成县| 荃湾区| 宜城市| 新野县| 海盐县| 张家界市| 长沙市| 定州市| 自贡市| 苏尼特左旗| 剑河县| 乌拉特前旗| 绵竹市| 浪卡子县| 康保县| 莱西市| 溆浦县| 遵义市| 华宁县| 江口县| 安顺市| 咸宁市| 宣恩县| 泗水县| 和林格尔县| 濮阳市| 怀来县| 同仁县| 海淀区| 侯马市| 社旗县| 诏安县| 鲁山县| 临邑县| 玉林市| 韶关市| 诸暨市|