4
我想使用熊貓來計算EWMA,但結果並不是我所期望的。我認爲第四元素應該是13.179,而熊貓則是13.121。我通過documentation中指定的公式將衰減因子(a)轉換爲質量中心。我誤解任何東西嗎?熊貓EWMA不按預期工作
In[222]: y
Out[222]:
0 NaN
1 NaN
2 13.192161
3 13.109292
4 12.623850
5 12.150520
Name: data, dtype: float64
In[223]: pd.ewma(y, com = 1.0/a - 1)
Out[223]:
0 NaN
1 NaN
2 13.192161
3 13.120667
4 12.701206
5 12.237839
dtype: float64
In[224]: a
Out[224]: 0.8408964152537145
In[225]: a * 13.192161 + (1 - a) * 13.109292
Out[225]: 13.17897624503566
它看起來像有一個錯字。在我的鏈接提供的文檔中,它表示a = 1 /(c + 1)。謝謝。 – ezbentley
這是建議的文檔修復(從一段時間回來).....如果這看起來是正確的,你可以評論一個人嗎?感謝:https://github.com/pydata/pandas/pull/4321 – Jeff
@Jeff:我還沒有研究定義ewma的C代碼,所以上面的代碼可能不完全複製ewma,但它似乎表明至少在一些簡單情況下,yt = a * yt1 +(1-a)* xt'是正確的公式。我已經在[在github頁面上](https://github.com/pydata/pandas/pull/4321)留下了一條評論。 – unutbu