是否需要使用NumPy代替Pandas处理数据以提高性能?
Pandas和NumPy是Python数据科学领域中最基础的两个库,他们都可以读取大量的数据并对数据做计算等处理。有很多的操作他们都能做。只不过一般来说,Pandas的DataFrame是一种“表格”,处理的数据可以是非常复杂的结构,一个DataFrame对象可以包括数值、字符等内容。而NumPy处理的基本对象一般是数值型的数组。

那么,这两个Python库在数据处理的性能上有什么差别呢?在工程项目中,是否需要考虑优先选择哪种?今天在Reddit上看到一个有意思的讨论和大家分享一下。
一、问题的由来
有位网友是做ETL工具的,目前他们使用pandas来处理数据。他们目前会在亚马逊云上的EC2做一笑部分的Python脚本工作。不过,目前项目中的数据都是比较小的数据。但是有的人建议他如果想更有效率地处理更大规模的数据,最好使用numpy代替pandas。他就问,是不是numpy替代pandas会更好?有没有必要?这个问题引起了很多的争论,各有观点,我选择了一些比较有价值的讨论供大家参考。
