数组允许我们将多个值存储在单个数据结构中。
NumPy 数组类似于列表,但具有更快的速度和更高的内存效率等优点。
Numpy 库提供了各种处理数据的方法。为了利用所有这些功能,我们首先需要创建 numpy 数组。
有多种生成 NumPy 数组的技术,我们将在下面探讨其中的每一种。
使用 Python 列表创建数组
我们可以使用 Python 列表 创建 NumPy 数组。例如,
import numpy as np
# create a list named list1
list1 = [2, 4, 6, 8]
# create numpy array using list1
array1 = np.array(list1)
print(array1)
# Output: [2 4 6 8]
在上面的示例中,我们首先将 numpy
库导入为 np
,并创建了一个名为 list1
的列表。请注意代码
array1 = np.array(list1)
在这里,我们通过将 list1
作为参数传递给 np.array()
函数来创建了一个数组。
我们不必创建列表并使用列表变量和 np.array()
函数,而是可以直接将列表元素作为参数传递。例如,
import numpy as np
# create numpy array using a list
array1 = np.array([2, 4, 6, 8])
print(array1)
# Output: [2 4 6 8]
此代码将产生与先前代码相同的输出。
注意:与列表不同,数组只能存储相似类型的数据。
使用 np.zeros() 创建数组
np.zeros()
函数允许我们创建一个包含所有零的数组。例如,
import numpy as np
# create an array with 4 elements filled with zeros
array1 = np.zeros(4)
print(array1)
# Output: [0. 0. 0. 0.]
在这里,我们使用 np.zeros(4)
函数创建了一个名为 array1
的数组,其中包含 4 个元素,所有元素都初始化为 0。
注意:类似地,我们可以使用 np.ones()
创建一个包含值 1 的数组。
使用 np.arange() 创建数组
np.arange()
函数返回一个在指定区间内具有值的数组。例如,
import numpy as np
# create an array with values from 0 to 4
array1 = np.arange(5)
print("Using np.arange(5):", array1)
# create an array with values from 1 to 8 with a step of 2
array2 = np.arange(1, 9, 2)
print("Using np.arange(1, 9, 2):",array2)
输出
Using np.arange(5): [0 1 2 3 4] Using np.arange(1, 9, 2): [1 3 5 7]
在上面的示例中,我们使用 np.arange()
函数创建了数组。
np.arange(5)
- 创建一个包含 5 个元素的数组,其值范围从 0 到 4np.arange(1, 9, 2)
- 创建一个包含 5 个元素的数组,其值范围从 1 到 8,步长为 2。
使用 np.random.rand() 创建数组
np.random.rand()
函数用于创建随机数数组。
让我们看一个创建包含 5 个随机数的数组的示例,
import numpy as np
# generate an array of 5 random numbers
array1 = np.random.rand(5)
print(array1)
输出
[0.08455648 0.56379034 0.66463204 0.97608605 0.30700052]
在上面的示例中,我们使用 np.random.rand()
函数创建了一个名为 array1 的数组,其中包含 5 个随机数。
此代码每次运行时都会生成不同的输出。
创建空的 NumPy 数组
要创建空的 NumPy 数组,我们使用 np.empty()
函数。例如,
import numpy as np
# create an empty array of length 4
array1 = np.empty(4)
print(array1)
输出
[1.47966080e-316 0.00000000e+000 9.06092203e-312 2.47218893e-253]
在这里,我们使用 np.empty()
函数创建了一个长度为 4 的空数组。
如果我们查看代码的输出,我们可以看到空数组实际上不是空的,它里面有一些值。
这是因为尽管我们创建了一个空数组,NumPy 仍会尝试为其添加一些值。数组中存储的值是任意的,没有实际意义。