簡體   English   中英

在 Pandas groupby 上應用 ewm 函數

[英]Apply ewm function on Pandas groupby

我有這個數據幀

ddd = pd.DataFrame({'day':['m','t','m','t','m','t','m','t'] 
                    ,'val':[15,2,10,4,5,8,2,10]})

我想按day 分組並將valewm聚合

如果我做 groupby 並且意味着我得到了這個

ddd.groupby(['day']).mean()

     val
day     
m      8
t      6

現在就像這樣,如果我嘗試

ddd.groupby(['day']).ewm(com=1.0).mean()

我收到錯誤AttributeError: 'DataFrameGroupBy' object has no attribute 'ewm'

我的預期輸出看起來像這樣

     val
day     
m      4.733333
t      8.133333

並非所有dataframeseries函數都為groupby對象實現。 但是您可以使用apply來獲得預期的結果

ddd.groupby(['day']).apply(lambda x: x.ewm(com=1.0).mean().iloc[-1])

出去:

          val
day          
m    4.733333
t    8.133333

暫無
暫無

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

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