熊猫,滚动时调用自定义函数

时间:2019-04-15 14:02:30

标签: python pandas

我有一个函数my_function(data),它接收data一个Python数组(或Numpy serie)并返回一个整数。

我可以从Pandas数据框中输入一列,然后得到整个系列的my_function

现在我想这样做,但是要滚动。

my_function(data['column'].rolling(30))根本不起作用,因为该函数需要一个数组。 data['column'].rolling(30).my_function也是如此。

执行此操作的语法正确方法是什么?可能吗?还是我必须手动进行?

如果我必须自己遍历数据帧,那么有什么我可以使用的,以便每次迭代一次给我任意数量的行(让我说30行)?

1 个答案:

答案 0 :(得分:2)

使用Rolling.apply

data['column'].rolling(30).apply(my_function)

也帮助How do pandas Rolling objects work?