簡體   English   中英

計算 pandas 中的移動平均值

[英]calculating moving average in pandas

所以,這對我來說是一個相當新的話題,我還不太明白。 我想在包含體積列的移動平均值的數據集中創建一個新列。 window 大小為 5,行 x 的移動平均值是根據行 x-2、x-1、x、x+1 和 x+2 計算的。 對於 x=1 和 x=2,分別使用三行和四行計算移動平均值

我這樣做了。

df['Volume_moving'] = df.iloc[:,5].rolling(window=5).mean()
df

Date    Open    High    Low Close   Volume  Adj Close   Volume_moving
0   2012-10-15  632.35  635.13  623.85  634.76  15446500    631.87  NaN
1   2012-10-16  635.37  650.30  631.00  649.79  19634700    646.84  NaN
2   2012-10-17  648.87  652.79  644.00  644.61  13894200    641.68  NaN
3   2012-10-18  639.59  642.06  630.00  632.64  17022300    629.76  NaN
4   2012-10-19  631.05  631.77  609.62  609.84  26574500    607.07  18514440.0
... ... ... ... ... ... ... ... ...
85  2013-01-08  529.21  531.89  521.25  525.31  16382400    525.31  17504860.0
86  2013-01-09  522.50  525.01  515.99  517.10  14557300    517.10  16412620.0
87  2013-01-10  528.55  528.72  515.52  523.51  21469500    523.51  18185340.0
88  2013-01-11  521.00  525.32  519.02  520.30  12518100    520.30  16443720.0
91  2013-01-14  502.68  507.50  498.51  501.75  26179000    501.75  18221260.0

但是,我認為結果不准確,因為我嘗試使用不同的 dataframe 並得到完全相同的結果。

誰能幫我解決這個問題?

試試這個:

df['Volume_moving'] = df['Volume'].rolling(window=5).mean()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM