前言
在金融计算中,有很多内容都涉及偏移计算,例如计算5天平均移动线、计算10天涨幅等等,pandas中有很多函数可以非常简单的用一行代码予以解决
rolling函数
主要解决统计学计算,比如移动平均线的计算方法:
df_ma10=df['close'].rolling(10).mean()
rolling可叠加不同的函数
文档地址:
https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.rolling.html
shift函数
主要用于偏移取值,例如周末计算周涨幅:
df_day5=(df['close'].shift(4)-df['close'])/df['close'].shift(4)
注意:shift(int)中,int可以取正,也可以取负,默认为1
shift(1)意味着取1天前的收盘价,但这是两个交易日。所以如果周五计算周涨幅,应该是5个交易日,即shift(4)
文档地址:
https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.shift.html
pct_change函数
主要用于计算涨幅,十分强大的一个工具,和shift函数类似,但直接出结果,不需要额外计算,还是在周末计算周涨幅
df_day5=df['close'].pct_change(4)
文档地址:
https://pandas.pydata.org/pandas-docs/version/0.22/generated/pandas.DataFrame.pct_change.html
最后给出输出结果
percent.png
网友评论