指示如何优化熊猫代码的指标

时间:2019-01-28 22:58:56

标签: python pandas optimization

您将寻找什么来告诉您采取什么策略(向量化,使用numba优化函数,制作C函数等)来优化长时间运行或需要大量内存的代码?

  • 探查器会告诉您哪些函数正在占用资源,但您如何知道是否值得花时间对其进行优化。

  • 仅数据的性质(数据帧的大小,文件系统中的数据的大小,数据类型)能否提供线索?

  • 你怎么知道什么时候放弃?
    例如,此question 正在寻求优化加载多个文件,但似乎 IO受限,因为即使使用多重处理也无济于事。

我不是在问如何优化代码,而是在试图提高效率时,特别是在使用熊猫时,如何知道该朝哪个方向

编辑:优化代码时,我们只是“知道”从哪里开始。我们称其为“直觉”,但这必须基于 something 某事是什么,这可能是我的问题。

1 个答案:

答案 0 :(得分:0)

没有用于优化代码的奇迹公式,但是可以使用一种工具来评估一种选择相对于另一种选择的效率。

  1. python中的timeit模块(此模块避免了许多用于测量执行时间的常见陷阱)
  2. shell中的time命令(您还将对Python本身进行计时,这就是为什么时间不准确的原因)

更改您的代码,看看哪个更快,就是这样。

另一个建议可能是并不总是将所有内容加载到内存中。并在使用数据时加载数据,它可能会更有效率,但不一定要测试。