plot函数_时间序列:python移动窗口函数前言
一起學(xué)習(xí),一起成長!
在移動(dòng)窗口(可以帶有指數(shù)衰減權(quán)數(shù))上計(jì)算的各種統(tǒng)計(jì)函數(shù)也是一類常見于時(shí)間序列的數(shù)組變換。它們稱為移動(dòng)窗口函數(shù),其中還包括那些窗口不定長的函數(shù)(如指數(shù)加權(quán)移動(dòng)平均)。跟其他統(tǒng)計(jì)函數(shù)一樣,移動(dòng)窗口函數(shù)也會(huì)自動(dòng)排除缺失值?!赣H,如果筆記對(duì)您有幫助,收藏的同時(shí),記得給點(diǎn)個(gè)贊、加個(gè)關(guān)注哦!感謝!」
「文中代碼均親測過,若有錯(cuò)誤之處,歡迎批評(píng)指正,一起學(xué)習(xí),一起成長!」
Series.rolling.mean()是其中最簡單的一個(gè),它接受一個(gè)TimeSeries或DataFrame以及一個(gè)window(表示期數(shù)):
In [14]: close_px.AAPL.plot()
Out[14]:
默認(rèn)情況下,諸如Series.rolling.mean()這樣的函數(shù)需要指定數(shù)量的非NA觀測值??梢孕薷脑撔袨橐越鉀Q缺失數(shù)據(jù)的問題。其實(shí),在時(shí)間序列開始處尚不足窗口期的那些數(shù)據(jù)就是個(gè)特例:
In [18]: prm=pd.Series.rolling(close_px.AAPL,250).mean()
In [19]: prm.plot()
Out[19]:
In [24]: appl_std250=pd.Series.rolling(close_px.AAPL,250,min_periods=10).mean()
In [25]: appl_std250[5:12]
Out[25]:
1990-02-08 NaN
1990-02-09 NaN
1990-02-12 NaN
1990-02-13 NaN
1990-02-14 7.964000
1990-02-15 7.967273
1990-02-16 7.962500
Freq: B, Name: AAPL, dtype: float64
In [26]: appl_std250.plot()
Out[26]:
要計(jì)算擴(kuò)展窗口平均,可以將擴(kuò)展窗口看做一個(gè)特殊的窗口,其長度與時(shí)間序列一樣,但只需一期(或多期)即可計(jì)算一個(gè)值:
# 通過Series.rolling.mean()定義擴(kuò)展平均
In [27]: expanding_mean=lambda x :Series.rolling(x,len(x),min_periods=1).mean()
對(duì)DataFrame調(diào)用Series.rolling.mean()(以及與之類似的函數(shù))會(huì)將轉(zhuǎn)換應(yīng)用到所有的列上:
In [29]: pd.Series.rolling(close_px,60).mean().plot(logy=True)
Out[29]:
「親,如果筆記對(duì)您有幫助,收藏的同時(shí),記得給點(diǎn)個(gè)贊、加個(gè)關(guān)注哦!感謝!」
「文中代碼均親測過,若有錯(cuò)誤之處,歡迎批評(píng)指正,一起學(xué)習(xí),一起成長!」
總結(jié)
以上是生活随笔為你收集整理的plot函数_时间序列:python移动窗口函数前言的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java面试题 sql_Java面试题总
- 下一篇: python prettytable表格