【发布时间】:2018-08-20 23:05:09
【问题描述】:
我想取一个大小为 8 的滚动窗口并减去它的平均值。我认为这样做很简单。
df[column].rolling(8,min_periods=4)-df[column].rolling(8,min_periods=4).mean()
显然这是错误的。我在这里阅读了文档https://pandas.pydata.org/pandas-docs/stable/computation.html
所以我想使用 .apply()
def dumby(x):
return x
df[column].rolling(8,min_periods=4).apply(dumby)-df[column].rolling(8,min_periods=4).mean()
这也不起作用,对我来说似乎不是好的代码。
我对以下内容进行了愚蠢的修改,但它不起作用。它指出需要一个浮点数作为错误。
def dumby(x):
t=[]
for i in x:
t.append(i)
j=[float(y) for y in t]
return j
感谢任何帮助。
编辑添加的表格以澄清我的要求。寻找最终价值。
编辑 2:使用 100k + 行,因此窗口方法很重要。
【问题讨论】:
-
你能创建一些具有预期输出的虚拟数据吗?
-
谢谢。只是一个例子
标签: python pandas rolling-computation