[学习记录]dataframe的ewm()方法
以下内容均为借鉴 Jon Snow(不想当韭菜的码农不是好交易员)知乎内容,予以感谢。
pandas库中的ewm(),是我学习量化以来第一个卡住的地方,越学发现和数学的紧密程度越高。
1 | DataFrame.ewm(self, com=None, span=None, halflife=None, alpha=None, min_periods=0, adjust=True, ignore_na=False, axis=0) |
提供index加权函数,
com:根据质心指定衰减, α=1/(1+com), for com≥0
span :根据范围指定衰减, α=2/(span+1), for span≥1
halflife :根据半衰期指定衰减, α=1−exp(log(0.5)/halflife),forhalflife>0
alpha:直接指定平滑系数α, 0<α≤1
。
min_periods :窗口中具有值的最小观察数
示例:
1 2 3 4 5 | import pandas as pd import numpy as np df = pd.DataFrame({ 'B' : [0, 1, 2, np.nan, 4]}) print(df) print(df.ewm(span=2).mean()) |
结果:
1 2 3 4 5 6 7 8 9 10 11 12 | B 0 0.0 1 1.0 2 2.0 3 NaN 4 4.0 B 0 0.000000 1 0.750000 2 1.615385 3 1.615385 4 3.670213 |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix