pandas 中的 for 循环真的很糟糕吗?我什么时候应该关心?
简介
虽然 pandas 以其可加速计算的矢量化运算而闻名,但许多代码示例仍然包含循环。虽然文档建议避免对数据进行迭代,但本文探讨了 for 循环比矢量化方法提供更好性能的场景。
小数据上的迭代与矢量化
For对于小数据,for 循环的性能优于矢量化函数,因为后者处理轴对齐、混合数据类型和丢失数据所涉及的开销。采用优化迭代机制的列表推导式甚至更快。
混合/对象数据类型的操作
基于字符串的比较:
访问字典/列表元素:
正则表达式操作
何时考虑 for 循环
对于小行 DataFrame:
混合数据类型:
正则表达式:
结论
虽然矢量化函数提供了简单性和可读性,但在特定场景中考虑基于循环的解决方案非常重要。建议仔细测试以确定最适合您的性能要求的方法。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3