【问题标题】:Comparing zip operation with pandas slice operation比较 zip 操作与 pandas 切片操作
【发布时间】:2019-03-20 11:56:00
【问题描述】:

我觉得我应该澄清一个有趣的观察结果。

我希望 pandas 切片操作应该比压缩数据帧的列更快,但是在两个操作上运行 %timeit 时,压缩操作会更快...

import pandas as pd, numpy as np
s = pd.DataFrame({'Column1':range(50), 'Column2':np.random.randn(50), 'Column3':np.random.randn(50)})

在运行中

%timeit s[['Column1','Column3']].loc[30].values

每个循环 1.06 毫秒 ± 145 微秒(平均值 ± 标准偏差,7 次运行,每次 1000 次循环)

%timeit dict(zip(s['Column1'],s['Column3']))[30]

每个循环 53.7 µs ± 6.07 µs(7 次运行的平均值 ± 标准偏差,每次 10000 个循环)

这说明 pandas 比使用 zip 功能要慢得多,对吧?我相信,它的易用性可能只会更好。

应用映射操作会更快吗?

【问题讨论】:

    标签: python pandas numpy zip slice


    【解决方案1】:

    Zip 已针对在处理器缓存中运行进行了优化。它非常快,就像一般的 itertools 一样。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-30
      • 2019-02-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-21
      相关资源
      最近更新 更多