更快的熊猫切片和列总和计算的提示

时间:2014-12-24 01:29:13

标签: python performance pandas

我想改进comp。在我的代码的不同部分中的表现,只是想知道我将如何在熊猫部分中进行。

,为了解决某些列的总和计算问题,我比较了一些基于小型DataFrame的示例

1)

%timeit -n 5 -r 1000 df[['week_points', 'month_points', 'dk_avg_points', 'home']].sum(axis=0)

5个循环,最佳1000:每循环911μs

2)

%timeit -n 5 -r 1000 df[['week_points', 'month_points', 'dk_avg_points', 'home']].values.sum(axis=0)

5个循环,最好的1000:每循环716μs

3)

%timeit -n 5 -r 1000 df['week_points'].sum(); df['month_points'].sum(); avg_pts = df['dk_avg_points'].sum(); df['home'].sum() 

5个循环,最佳的1000:每循环411μs

4)

%timeit -n 5 -r 1000 df['week_points'].values.sum(); df['month_points'].values.sum(); avg_pts = df['dk_avg_points'].values.sum(); df['home'].values.sum() 

5个循环,最好是1000:每循环17.2μs

3号& 4真的让我感到惊讶。为什么分别计算每列的总和要快得多?我在这里有一个想法的错误,或者对此有一些解释?

如果您有任何进一步的想法来提高计算速度,那也很好! 谢谢!

0 个答案:

没有答案
相关问题