Python本身的数据分析功能不强,需要安装一些第三方扩展库以增强器能力。数据分析及预处理常用库有NumPy、pandas、Matplotlib等,如表2-4所示。
表2-4 Python数据分析及预处理常用库
2.2.1 NumPy
NumPy的前身Numeric最早是由吉姆 弗贾宁与其他协作者共同开发的。2005年,特拉维斯 奥利芬在Numeric中结合力另一个同性质的程序库Numarray的特色,并加入了其他扩展,开发出了NumPy。
NumPy是用Python进行科学计算的基础软件包,也是一个Python库,提供多维数组对象和各种派生对象(如掩码数组和矩阵),以及用于数组快速操作的各种API,包括数学、逻辑、形状操作、排序、选择、输入/输出、离散傅立叶变换、基本线性代数、基本统计运算和随机模拟等,因而能够快速地处理数据量大且繁琐的数据运算。
NumPy还是很多更高级的扩展库的依赖库,后面介绍的pandas、Matplotlib、SciPy等库都依赖于NumPy。值得强调的是,NumPy中的内置函数处理数据的速度是C语言级别的,非常快,因此在编写程序的时候,应当尽量使用这些内置函数,从而避免效率瓶颈的现象。