1.Numpy的发展历程


NumPy 是一个 Python 包。 它代表 “Numeric Python”。

Numeric,即 NumPy 的前身,最早是由Jim Hugunin与其它协作者共同开发,2005年,Travis Oliphant在Numeric中结合了另一个同性质的程序库Numarray的特色,并加入了其它扩展而开发了NumPy。NumPy为开放源代码并且由许多协作者共同维护开发。

2.Numpy的官方介绍

Numpy的官方网站是http://www.numpy.org/,根据官方网站的介绍:通俗的讲:

NumPy是Python语言的一个扩充程序库。支持高级大量的维度数组与矩阵运算,计算性能比Python自带的数据结构处理更加高效,操作更加方便,功能的组合包装也更加丰富,同时也针对数组运算提供大量的数学函数库。简而言之,Numpy包装了对一维数组结构、二维数据结构、多维数据结构的操作方法。同时Numpy也是其它Python库的底层库,比如Scipy、Pandas。

3.Numpy能做什么?

python在拥有Numpy之后,就可以将数组创建以及进行数组处理的分析工作交给Numpy来完成,这是我们使用Numpy的主要功能点。使用NumPy,开发人员可以执行以下操作:

  • 数组的算数和逻辑运算。

  • 傅立叶变换和用于图形操作的例程。

  • 与线性代数有关的操作。 NumPy 拥有线性代数和随机数生成的内置函数。

  • NumPy – MatLab 的替代之一: NumPy 通常与SciPy(Scientific Python)和Matplotlib(绘图库)一起使用。 这种组合广泛用于替代 MatLab,是一个流行的 技术计算平台。 但是,Python 作为 MatLab 的替代方案,现在被视为一种更加现代和完整的编程语言。

NumPy 是开源的,这是它的一个额外的优势。

本文摘自《用Python做科学计算》,版权归原作者所有。

NumPy为Python提供了快速的多维数组处理的能力,而SciPy则在NumPy基础上添加了众多的科学计算所需的各种工具包,有了这两个库,Python就有几乎和Matlab一样的处理数据和计算的能力了。

4.Numpy比Python优势

  • 标准安装的Python中用列表(list)可以用来当作数组使用,但是列表中所保存的是对象(任意对象)的指针。对于数值运算来说这种结构显然比较浪费内存和CPU计算时间。Python还提供了一个array模块,array对象和列表不同,它直接保存数值。但是由于它只支持一维数组,也没有各种运算函数,因此也不适合做数值运算。

NumPy提供了两种基本的对象,解决标准Python的不足:

  • ndarray(N-dimensional array object)N维数组(简称数组)对象,存储单一数据类型的N维数组
  • ufunc(universal function object)通用函数对象,对数组进行处理的函数。

results matching ""

    No results matching ""