pandas如何計(jì)算移動(dòng)平均值
pandas計(jì)算移動(dòng)平均值
本人遇到遇到一個(gè)任務(wù),計(jì)算同月份合約當(dāng)天各合約總持倉量的移動(dòng)平均值。
立刻寫下了這個(gè)函數(shù):
group = df.groupby(['合約系列','date']) f = pd.DataFrame(group['持倉量'].sum().rolling(20).mean())
上交后,提出要求,不行,這個(gè)數(shù)據(jù)不行,存在一些數(shù)據(jù),因?yàn)椴蛔?0天,導(dǎo)致結(jié)果為NAN。
一開始沒想到思路,然后就問問群里的大佬,大佬給的第一個(gè)建議,寫個(gè)功能函數(shù)。但是因?yàn)閿?shù)據(jù)比較復(fù)雜,非連續(xù)數(shù)據(jù),光是分類就很難,就繼續(xù)詢問。
直到一位大佬給了個(gè)答案:
group = df.groupby(['合約系列','date']) f = pd.DataFrame(group['持倉量'].sum().rolling(20,min_periods = 1).mean())
min_periods:#表示窗口最少包含的觀測值為1
意味著數(shù)據(jù)不滿20天的,自動(dòng)有一天算一天,計(jì)算均值。如第19天數(shù)據(jù),此時(shí)顯示的結(jié)果就是前面19天的均值。
pandas求滑動(dòng)平均值
df.rolling(3, center=True).mean()
如果求最小值、最大值、求和等,可以改變最后面的函數(shù),比如
df.rolling(3, center=True).min() df.rolling(3, center=True).max() df.rolling(3, center=True).sum()
其他參數(shù):
DataFrame.rolling(window, min_periods=None, center=False, win_type=None, on=None, axis=0, closed=None)
window
:選幾個(gè)數(shù)求滑動(dòng)平均值center
:true-以當(dāng)前數(shù)為中心win_type
:如果沒有特殊指定,所有數(shù)的權(quán)重是一樣的
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
多個(gè)版本的python共存時(shí)使用pip的正確做法
這篇文章主要介紹了多版本python共存時(shí)使用pip的正確做法,幫助有多個(gè)python版本需求的人可以正確的導(dǎo)包,感興趣的朋友可以了解下2020-10-10python GUI庫圖形界面開發(fā)之PyQt5窗口類QMainWindow詳細(xì)使用方法
這篇文章主要介紹了python GUI庫圖形界面開發(fā)之PyQt5窗口類QMainWindow詳細(xì)使用方法,需要的朋友可以參考下2020-02-02淺析Python 抽象工廠模式的優(yōu)缺點(diǎn)
這篇文章主要介紹了Python 抽象工廠模式的優(yōu)缺點(diǎn),文中示例代碼非常詳細(xì),幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下2020-07-07Python實(shí)現(xiàn)定時(shí)自動(dòng)關(guān)閉的tkinter窗口方法
今天小編就為大家分享一篇Python實(shí)現(xiàn)定時(shí)自動(dòng)關(guān)閉的tkinter窗口方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-02-02tensorflow 模型權(quán)重導(dǎo)出實(shí)例
今天小編就為大家分享一篇tensorflow 模型權(quán)重導(dǎo)出實(shí)例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-01-01python 利用jieba.analyse進(jìn)行 關(guān)鍵詞提取
這篇文章主要介紹了python 利用jieba.analyse進(jìn)行關(guān)鍵詞提取的方法,幫助大家更好的利用python,感興趣的朋友可以了解下2020-12-12Python檢查判斷一個(gè)數(shù)是不是另一個(gè)數(shù)的整數(shù)次冪實(shí)例深究
在數(shù)學(xué)和計(jì)算中,確定一個(gè)數(shù)是否為另一個(gè)數(shù)的整數(shù)次冪是一個(gè)常見而重要的問題,例如,我們可能需要判斷一個(gè)數(shù)是否是某個(gè)數(shù)的平方、立方或其他冪次,本文將探討在Python中如何實(shí)現(xiàn)這一功能,通過數(shù)學(xué)方法和算法檢查一個(gè)數(shù)是否是另一個(gè)數(shù)的整數(shù)次冪2023-12-12