Python 当输入是列表时,为什么pd.df.rolling.aggregate花费的时间会更长?

Python 当输入是列表时,为什么pd.df.rolling.aggregate花费的时间会更长?,python,pandas,pandas-rolling,Python,Pandas,Pandas Rolling,我正在使用python 3.8.3和pandas 1.1.5 表_in.T是一个18×209997的数据帧窗口和期间都设置为12 以下三行代码分别需要9.52秒、6.27秒和5分钟53秒运行 rolledsum2_in = table_in.T.rolling(window, min_periods=periods).agg('sum') rolledmean2_in = table_in.T.rolling(window, min_periods=periods).agg('mean') ro

我正在使用python 3.8.3和pandas 1.1.5

表_in.T
是一个18×209997的数据帧<代码>窗口和期间都设置为12

以下三行代码分别需要9.52秒、6.27秒和5分钟53秒运行

rolledsum2_in = table_in.T.rolling(window, min_periods=periods).agg('sum')
rolledmean2_in = table_in.T.rolling(window, min_periods=periods).agg('mean')
rolledsumean_in = table_in.T.rolling(window, min_periods=periods).agg(['sum','mean'])

为什么通过求和和和平均值聚合滚动对象比单独聚合要花费更长的时间?

这可能很大程度上取决于基础数据,您可以使用
prun
memit
模块查看“引擎盖下”,并检查代码的哪些部分使用的处理器和内存最多