从数据框列创建滚动方差

我有一个数据框(df),它看起来像:


              A     B         C          D      

date                                       

2014-02-25  2.41  1.0   20712.0  324.90415  

2014-02-26  2.41  1.0   11400.0  324.90415   

2014-02-27  2.40  1.0    4370.0  323.55600   

2014-02-28  2.37  1.0   51943.0  319.51155   

2014-03-03  2.40  1.0   27902.0  323.55600   

:   :       :       :

2015-03-16  2.39  1.0   18059.0  322.20785   

2015-03-17  2.40  1.0   24346.0  323.55600  

2015-03-18  2.35  1.0  344171.0  316.81525     

2015-03-19  2.35  1.0   15247.0  316.81525   

2015-03-20  2.35  1.0   90217.0  316.81525  

我想计算最近 5 个日期(2015-03-16 - 2015-03-20)的 A 列的滚动方差,回顾每次计算的最后 260 天。


我可以看到计算我可以使用的方差df['A'].var()。我可以创建一个只有最近 260 天的新数据框,但想知道是否有更优雅的方法来计算 A 列数据框中最后 5 个日期的 260 天方差?


茅侃侃
浏览 163回答 1
1回答

largeQ

尝试:variance = df.A.rolling(260).var()这为您提供了整个数据的差异。然后你可以做variance[-5:]
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python