NumPy 基础 (一) - 创建数组

一、导入 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 协议》,转载必须注明作者和本文链接
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!