9月23日总结
加速操作
借助 numexpr 与 bottleneck 支持库,Pandas 可以加速特定类型的二进制数值与布尔操作。
处理大型数据集时,这两个支持库特别有用,加速效果也非常明显。 numexpr 使用智能分块、缓存与多核技术。bottleneck 是一组专属 cython 例程,处理含 nans 值的数组时,特别快。
请看下面这个例子(DataFrame 包含 100 列 X 10 万行数据):
| 操作 | 0.11.0版 (ms) | 旧版 (ms) | 提升比率 |
|---|---|---|---|
df1 > df2 |
13.32 | 125.35 | 0.1063 |
df1 * df2 |
21.71 | 36.63 | 0.5928 |
df1 + df2 |
22.04 | 36.50 | 0.6039 |
强烈建议安装这两个支持库,更多信息,请参阅推荐支持库 (opens new window)。
这两个支持库默认为启用状态,可用以下选项设置:
0.20.0 版新增。
pd.set_option('compute.use_bottleneck', False)
pd.set_option('compute.use_numexpr', False)

浙公网安备 33010602011771号