熊猫滚动窗口多列

iro*_*t96 7 python numpy pandas

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

例如,拿这个数据框,

   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 只是向我的函数提供一维数组。我怎样才能提供所有列?

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

谢谢