Python 从dataframe列创建滚动差异
我有一个数据帧(Python 从dataframe列创建滚动差异,python,pandas,Python,Pandas,我有一个数据帧(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 20
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
我想计算A列在过去5个日期(2015-03-16-2015-03-20)的滚动差异,回顾每次计算的最后260天
我可以用df['A'].var()计算方差。我可以创建一个只包含最后260天的新数据框,但我想知道是否有更优雅的方法来计算a列数据框中最后5个日期的260天方差?试试:
variance = df.A.rolling(260).var()
这将为您提供整个数据的方差。那你就可以了
variance[-5:]
您是否查看了.rolling()?谢谢,是的,但看不到如何使用rolling仅查看最近5个日期的计算差异