📅  最后修改于: 2023-12-03 15:03:18.915000             🧑  作者: Mango
在NumPy中,可以通过 numpy.vstack
函数将两个数组垂直堆叠在一起,从而创建一个新的数组。在这个过程中,每个数组的第一个轴的大小必须相同,否则会出现 ValueError 错误。
下面是一个简单的例子:
import numpy as np
# 创建两个ndarray对象
a = np.array([[1, 2], [3, 4]])
b = np.array([[5, 6]])
# 使用 vstack 函数垂直堆叠两个数组
c = np.vstack((a, b))
print(c)
# output:
# array([[1, 2],
# [3, 4],
# [5, 6]])
在这个例子中,我们创建了两个 ndarray
对象 a
和 b
,其中 a
的大小为 (2, 2)
,b
的大小为 (1, 2)
。我们使用 numpy.vstack
函数将它们垂直堆叠在一起,创建一个新的数组 c
,大小为 (3, 2)
。
值得注意的是,numpy.vstack
函数的参数是一个元组,表示要堆叠的所有数组。在这个例子中,我们将 a
和 b
两个数组组成一个元组 (a, b)
传递给 numpy.vstack
函数。
除了使用 numpy.vstack
函数外,我们还可以使用 numpy.concatenate
函数将两个数组垂直堆叠在一起。这个函数的参数跟 numpy.vstack
函数类似,不过要加上一个关键字参数 axis
,表示要沿着哪个轴进行连接。在垂直连接时,axis
的值应该为 0。
下面是一个使用 numpy.concatenate
函数完成垂直堆叠的例子:
import numpy as np
# 创建两个ndarray对象
a = np.array([[1, 2], [3, 4]])
b = np.array([[5, 6]])
# 使用 concatenate 函数垂直堆叠两个数组
c = np.concatenate((a, b), axis=0)
print(c)
# output:
# array([[1, 2],
# [3, 4],
# [5, 6]])
在这个例子中,我们使用 numpy.concatenate
函数来完成垂直连接操作。除了加上一个关键字参数 axis=0
,其他部分跟 numpy.vstack
函数的例子相同。
总之,在 NumPy 中,通过使用 numpy.vstack
或 numpy.concatenate
函数可以很方便地对数组进行垂直合并操作,这一点在处理数据时非常有用。