Pandas 使用多个函数时,数据帧应用速度较慢

Pandas 使用多个函数时,数据帧应用速度较慢,pandas,dataframe,Pandas,Dataframe,所以我试图理解为什么当有多个函数时,的行为非常缓慢。考虑: df = pd.DataFrame( np.random.rand(1000, 12), columns=[f'cols_{i}' for i in range(12)] ) 以及一些时间比较: %timeit df.apply('mean', axis=1) # 391 µs ± 6.35 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each) %time

所以我试图理解为什么当有多个函数时,的行为非常缓慢。考虑:

df = pd.DataFrame(
    np.random.rand(1000, 12),
    columns=[f'cols_{i}' for i in range(12)]
)
以及一些时间比较:

%timeit df.apply('mean', axis=1)
# 391 µs ± 6.35 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)

%timeit df.apply('max', axis=1)
# 400 µs ± 1.31 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)

%timeit df.apply(['mean', 'max'], axis=1)
# 784 ms ± 13.2 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)
因此,我的假设是,在第一种和第二种情况下,函数会同时应用于数据帧,而在第三种情况下,函数会逐行计算
mean
max
。另一方面也有同样的问题

有什么想法吗