我爱编程

pandas中数据偏移计算

2018-07-22  本文已影响0人  GeorgeV

前言

在金融计算中,有很多内容都涉及偏移计算,例如计算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
上一篇下一篇

猜你喜欢

热点阅读