小编iro*_*t96的帖子

熊猫滚动窗口多列

我正在处理一个熊猫数据框,并希望将自定义函数应用于该数据框的窗口。(行和列)

例如,拿这个数据框,

   A  B  C
0  1  4  7
1  2  5  8
2  3  6  9
Run Code Online (Sandbox Code Playgroud)

我想要的是让我的自定义函数像这样应用于窗口大小 2 的切片,

应用第一个函数,

0  1  4  7
1  2  5  8
Run Code Online (Sandbox Code Playgroud)

然后应用功能,

1  2  5  8
2  3  6  9
Run Code Online (Sandbox Code Playgroud)

我看着滚动窗口并尝试了这个,

df.rolling(2).apply(my_function)
Run Code Online (Sandbox Code Playgroud)

但是rolling.apply 只是向我的函数提供一维数组。我怎样才能提供所有列?

我想在不循环的情况下实现这一点。

谢谢

python numpy pandas

7
推荐指数
0
解决办法
1741
查看次数

标签 统计

numpy ×1

pandas ×1

python ×1