7 NumPy基本操作之创建数组
在上篇中,我们了解了如何验证 NumPy 的安装是否成功。现在,我们开始深入学习 NumPy 的基本操作,本章将重点介绍如何创建 NumPy 数组。这些数组是 NumPy 的核心数据结构,掌握它们的创建方法对于后续的数组索引与切片操作至关重要。
1. 创建 NumPy 数组
NumPy 提供了多种方法来创建数组,以下是我们最常用的一些方式:
1.1 从Python列表创建数组
最简单的方式是通过已有的 Python 列表来创建 NumPy 数组。可以使用 numpy.array()
函数进行转换。
1 | import numpy as np |
输出:
1 | [1 2 3 4 5] |
1.2 使用 numpy.arange()
numpy.arange()
函数可以生成一个等差数列的数组。它的用法类似于 Python 内置的 range()
函数,但返回的是一个 NumPy 数组。
1 | # 从0到9生成一个一维数组 |
输出:
1 | [0 1 2 3 4 5 6 7 8 9] |
可以指定步长:
1 | # 从0到20,只包含偶数 |
输出:
1 | [0 2 4 6 8 10 12 14 16 18] |
1.3 使用 numpy.zeros()
和 numpy.ones()
numpy.zeros()
和 numpy.ones()
分别用于创建全为零或全为一的数组。它们常用于初始化数组。
1 | # 创建一个3x4的全零数组 |
输出:
1 | [[0. 0. 0. 0.] |
1 | # 创建一个5个元素的全一数组 |
输出:
1 | [1. 1. 1. 1. 1.] |
1.4 使用 numpy.empty()
numpy.empty()
函数用于创建一个未初始化的数组,它的内容是随机的,取决于内存中的数据。
1 | # 创建一个2x3的数组 |
输出:
1 | [[1. 1. 1.] |
注意: 由于这是未初始化的数组,它的内容可能是任何数字。
1.5 使用 numpy.linspace()
numpy.linspace()
用于创建一个在指定区间内均匀分布的数组。非常适合生成范围内的等间隔数值。
1 | # 从0到1生成5个等间隔的数字 |
输出:
1 | [0. 0.25 0.5 0.75 1. ] |
2. 数组的类型
NumPy 数组具有统一的数据类型。可以通过dtype
属性查看数组的数据类型。
1 | arr_int = np.array([1, 2, 3]) |
你也可以在创建数组时手动指定数据类型:
1 | arr_float = np.array([1, 2, 3], dtype='float') |
3. 总结
本章介绍了如何使用 NumPy 创建数组的多种方法,涵盖了从 Python 列表转换、生成等差数列、创建全零或全一数组、创建未初始化数组、以及生成均匀分布的数值。在今后的操作中,我们将利用这些已创建的数组进行更复杂的操作,如索引与切片。
在下一篇中,我们将接着谈论 NumPy 数组的索引与切片操作,帮助大家更好地理解如何访问和修改 NumPy 数组中的数据。
7 NumPy基本操作之创建数组