np.stack
是NumPy库中的一个函数,用于在给定轴上将多个数组堆叠在一起。它具有以下语法格式:
np.stack(arrays, axis=0)
其中,arrays
是一个包含多个数组的序列(如列表、元组等),而axis
是指定堆叠轴的参数。
一些示例:
import numpy as np
# 示例1:将一维数组堆叠为二维数组
a = np.array([1, 2, 3])
b = np.array([4, 5, 6])
c = np.stack((a, b))
print(c)
# 输出:
# [[1 2 3]
# [4 5 6]]
# 示例2:将二维数组按行堆叠
x = np.array([[1, 2], [3, 4]])
y = np.array([[5, 6], [7, 8]])
z = np.stack((x, y), axis=0)
print(z)
# 输出:
# [[[1 2]
# [3 4]]
#
# [[5 6]
# [7 8]]]
# 示例3:将二维数组按列堆叠
x = np.array([[1, 2], [3, 4]])
y = np.array([[5, 6], [7, 8]])
z = np.stack((x, y), axis=1)
print(z)
# 输出:
# [[[1 2]
# [5 6]]
#
# [[3 4]
# [7 8]]]
需要注意的是,要保证被堆叠的数组的维度和形状在指定的堆叠轴上是一致的,否则会引发ValueError
异常。