Numpy是一个开源的Python科学计算库,它是python科学计算库的基础库,许多其他著名的科学计算库如Pandas,Scikit-learn等都要用到Numpy库的一些功能。

本文主要内容如下:

  1. Numpy数组对象

  2. 创建ndarray数组

  3. Numpy的数值类型

  4. ndarray数组的属性

  5. ndarray数组的切片和索引

  6. 处理数组形状

  7. 数组的类型转换

  8. numpy常用统计函数

  9. 数组的广播

1 Numpy数组对象

Numpy中的多维数组称为ndarray,这是Numpy中最常见的数组对象。ndarray对象通常包含两个部分:

  • ndarray数据本身

  • 描述数据的元数据

Numpy数组的优势

  • Numpy数组通常是由相同种类的元素组成的,即数组中的数据项的类型一致。这样有一个好处,由于知道数组元素的类型相同,所以能快速确定存储数据所需空间的大小。

  • Numpy数组能够运用向量化运算来处理整个数组,速度较快;而Python的列表则通常需要借助循环语句遍历列表,运行效率相对来说要差。

  • Numpy使用了优化过的C API,运算速度较快

关于向量化和标量化运算,对比下面的参考例子就可以看出差异

  • 使用python的list进行循环遍历运算

def pySum():
    a = list(range(10000))
    b = list(range(10000))
    c = []    for i in range(len(a)):
        c.append(a[i]**2 + b[i]**2)    return c
%timeit pySum()
10 loops, best of 3: 49.4 ms per loop
  • 使用numpy进行向量化运算

  • 网友评论