首页 > NumPy 阅读数:90

Python NumPy库简介

NumPy(Numerical Python)是一个开源的 Python 科学计算库,它是一个由多维数组对象和用于处理数组的例程集合组成的库。

Python NumPy 的基本功能

1) 提供了一个具有矢量算术运算和复杂广播功能的快速且节省空间的多维数组对象 ndarray。

2) 用于对数组执行元素级计算以及直接对数组执行数学运算函数。

3) 用于读写硬盘上基于数组的数据集的工具,以及用于操作内存映射文件的工具。

4) 提供了线性代数、随机数生成以及傅里叶变换功能。

5) 用于集成由 C、C++、Fortran 等语言编写的代码的工具。

6) 在数据分析方面,NumPy 还可作为算法之间传递数据的容器。

在 Python 中使用 NumPy 的优势

1) 在数值计算时,使用 NumPy 能够直接对数组和矩阵进行操作,由此可以省略许多处理数值计算的循环语句。同时,由于 NumPy 拥有众多的数学函数,因此会让编写代码的工作轻松许多。而且 NumPy 的底层算法在设计时就有着优异的性能,并且经受住了时间的考验。

2) NumPy 中数组的存储效率和输入输出性能均远远优于 Python 中等价的基本数据结构(如嵌套的 list 容器),其能够提升的性能与数组中元素的数目成比例。对于大型数组的运算,使用 NumPy 有很大的优势。

对于 TB 级的大文件,NumPy 使用内存映射文件来处理,以达到最优的数据读写性能。不过,NumPy 数组的通用性不及 Python 提供的 list 容器,因此在科学计算之外的领域,NumPy 的优势也就不那么明显了。

3) NumPy 的大部分代码都是用 C 语言编写的,这使 NumPy 比纯 Python 代码高效得多。NumPy 同样支持 C 语言的 API,并且允许在 C 源代码上做更多的功能拓展。

4) NumPy 通常与 SciPy(Scientific Python)和 Matplotlib(绘图库)一起使用,这种组合广泛用于替代 MATLAB,而 MATLAB 是一种流行的高级技术计算语言。

5) NumPy 是开源的库。