一、导入 NumPy
导入 NumPy
练习 NumPy 之前,首先需要导入 NumPy 模块,并约定简称为 np。
>>> import numpy as np
查看 NumPy 版本信息
>>> print(np.__version__)
1.16.2
二、创建数组
NumPy 的主要对象是多维数组 Ndarray。在 NumPy 中维度(dimensions)叫做轴(axes),轴的个数叫做秩(rank)。
例如,下方数组是一个秩为 1 的数组,因为它只有一个轴,而轴的长度为 3。
>>> [1, 2, 3]
[1, 2, 3]
又例如,下方数组的秩为 2。第一个维度长度为 2,第二个维度长度为 3。
>>> [[1, 2, 3],
... [4, 5, 6]]
[[1, 2, 3], [4, 5, 6]]
1. 通过列表创建一维数组
注意:numpy.array和 Python 标准库array.array并不相同,前者更为强大,这也就是我们学习 NumPy 的重要原因之一。
>>> np.array([1, 2, 3])
array([1, 2, 3])
2. 通过列表创建二维数组
>>> np.array([(1, 2, 3), (4, 5, 6)])
array([[1, 2, 3],
[4, 5, 6]])
3. 创建全为 0 的二维数组
>>> np.zeros((3, 3))
array([[0., 0., 0.],
[0., 0., 0.],
[0., 0., 0.]])
4. 创建全为 1 的三维数组
>>> np.ones((2, 3,np.ones((2, 3,np.ones((2, 3, 4))
array([[[1., 1., 1., 1.],
[1., 1., 1., 1.],
[1., 1., 1., 1.]],
[[1., 1., 1., 1.],
[1., 1., 1., 1.],
[1., 1., 1., 1.]]])
注意:务必想清楚上面 4 个数组的维度关系
5. 创建一维等差数组
>>> np.arange(5)
array([0, 1, 2, 3, 4])
6. 创建二维等差数组
>>> np.arange(6).reshape(2, 3)
array([[0, 1, 2],
[3, 4, 5]])
7. 创建单位矩阵(二维数组)
>>> np.eye(3)
array([[1., 0., 0.],
[0., 1., 0.],
[0., 0., 1.]])
8. 创建等间隔一维数组
>>> np.linspace(1, 10, num=6)
array([ 1. , 2.8, 4.6, 6.4, 8.2, 10. ])
9. 创建二维随机数组
>>> np.random.rand(2, 3)
array([[0.50122984, 0.98824375, 0.81388012],
[0.60951775, 0.02055326, 0.97622093]])
10. 创建二维随机整数数组
>>> np.random.randint(5, size=(2, 3))
array([[2, 0, 2],
[4, 4, 4]])
11. 依据自定义函数创建数组
>>> np.fromfunction(lambda i, j: i + j, (3, 3))
array([[0., 1., 2.],
[1., 2., 3.],
[2., 3., 4.]])
本作品采用《CC 协议》,转载必须注明作者和本文链接