我想使用当前行之前的所有记录计算每日回报的rolling_std。如何设置窗口以使用行的滚动计数?例如:在04-04
上。我希望在04-01
上使用所有行进行计算。我想使用日期小于04-01
的所有行。
Date Daily Std
4/4/2016 -0.003087335 ?
4/1/2016 0.006480923 ?
3/31/2016 -0.001553158 ?
3/30/2016 0.004351748 ?
3/29/2016 0.009234222 ?
答案 0 :(得分:1)
使用pandas 0.18,使用Rolling
对象。这是一个为期2天的滚动标准:
df.rolling(2).std()
在先前版本中,呼叫将是:
df.rolling_std(2)
如果目标是将函数从DataFrame的开头应用到当前行,那么要使用的对象是Expanding
:
df.expanding().std()