比方说,我有一个巨大的 Dataframe df
,其中N rows
和N可能是10亿行。
如果我这么做了
df.rolling(window=lookback).mean()
我将得到每一行的滚动平均值(或任何滚动操作)(当然,开始的行可能都是N,这取决于回看)
上面没有问题,但它非常非常慢,因为N太大了。
我只需要滚动last M rows
以节省时间,并且我只需要最后M行的结果。和M << N
我怎样才能做到这一点呢?我不想写我自己的滚动函数,在Pandas或Numpy中,有没有一种方法可以告诉我,只需做一些运算M次,然后停止?
1条答案
按热度按时间xv8emn3q1#
IIUC,您可以切片,然后应用滚动:
与之相比较:
输出示例: