pandas.DataFrame.ewm()


DataFrame.ewm(self,com=None,halflife=None, alpha=None, min_periods=0, adjust=True, ignore_na=False, axis=0)

提供指數加權平均

返回值 DataFrame
參數 com:float,可選

根據質心指定衰減,α=1/(1+com), for com≥0​​​​​​​

span:float,可選

根據范圍指定衰減,α=2/(span+1), for span≥1​​

halflife:float,可選

根據半衰期指定衰減,α=1−exp(log(0.5)/halflife), for halflife>0​​

alpha:float,可選

指定平滑系數α​,0<α≤1​

min_periods:int,默認為0

窗口中具有值的最小觀察數(否則結果為NA)

adjust:bool,默認為True

除以開始階段的衰減調整因子,以解釋相對權重的不平衡(將EWMA視為移動平均線)

ignore_na:bool,默認為False

計算權重時忽略缺失值;指定True重現0.15.0版本之前的行為。

axis:{0或者'index',1或‘columns’},默認為0,標識行,值1標識列。

必須提供質心(com)、跨度(span)、半衰期(half-life)和alpha值之一。

adjust = True(默認)時,將使用權重(1-α)^(n-1), (1-α)^(n-2),...1-α, 1來計算加權平均值。

adjust = False時,按照下式遞歸計算加權平均值:

weightd_average[0] = arg[0];

weighted_avreaged[i] = (1-α) * weighted_average[i-1] + α * arg[i]

ignore_na = False時,權重基於絕對值位置。

ignore_na = True時,權重基於相對值位置。




例如,用於計算 [x, None, y] 的最終加權平均值的 x 和 y 的權重分別為
(1-α)^2 和 1 (如果 adjust = True) ;
(1-α) 和 α (如果adjust = False)

例子

df = pd.DataFrame({'B': [0, 1, 2, np.nan, 4]})
df

image


df.ewm(com = 0.5).mean()

image


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM