我有这样一个数据帧:
date A
2015.1.1 10
2015.1.2 20
2015.1.3 30
2015.1.4 40
2015.1.5 50
2015.1.6 60
我需要计算前N行的std,例如:
^{pr2}$在pd.轧制标准但是,如何动态更改N?
df[['A']].apply(lambda x:pd.rolling_std(x,N))
<class 'pandas.core.frame.DataFrame'>
Index: 75 entries, 2015-04-16 to 2015-07-31
Data columns (total 4 columns):
A 75 non-null float64
dtypes: float64(4)
memory usage: 2.9+ KB
可以通过在df上调用
apply
来完成,如下所示:它使用双下标
[[]]
对具有单个列的df调用apply
,这允许您传递paramaxis=1
,这样您就可以按行调用函数,然后可以访问index属性name
和列名属性index
,这允许您将df切片以计算滚动std
。在您可以向
func
添加一个窗口参数以根据需要修改窗口编辑
看起来你的索引是一个str,下面应该行得通:
^{pr2}$相关问题 更多 >
编程相关推荐