Numpy row_stack() 函数
Numpy row_stack() 函数用于将一维或二维数组以行的形式堆叠成一个二维数组。该函数定义在 numpy 模块中,可用于将多个一维数组以行的形式堆叠成一个新的二维数组,或者用于沿第一个轴(垂直方向)连接两个形状兼容的二维数组。
numpy.row_stack() 函数将一维数组堆叠成一个二维数组的行,从而生成一个形状为 (m, n) 的数组,其中 m 是数组的数量,n 是数组的长度。与二维数组一起使用时,其行为类似于 numpy.vstack(),只要数组在其他轴上具有兼容的维度,就会沿第一个轴堆叠它们。

语法
以下是 numpy.row_stack() 函数的语法 -
numpy.row_stack(arrays)
参数
以下是 Numpy row_stack() 函数的参数 -
- 数组 -一维或二维数组序列。对于一维数组,所有数组的长度必须相同。对于二维数组,除第一个轴外,其他所有轴的形状都必须相同。
返回值
该函数返回一个二维数组,其中每个输入数组在输出中堆叠为一行。
示例
以下是一个基本示例,演示如何使用 Numpy row_stack() 函数将两个一维数组堆叠为行 -
import numpy as np my_Array1 = np.array([10, 20, 30]) my_Array2 = np.array([40, 50, 60]) row_stacked_array = np.row_stack((my_Array1, my_Array2)) print("Array 1 -", my_Array1) print("数组 2 -", my_Array2) print("行堆叠数组 - ", row_stacked_array)
输出
上述代码的输出如下:
数组 1 - [10 20 30] 数组 2 - [40 50 60] 行堆叠数组 - [[10 20 30] [40 50 60]]
示例 - 堆叠二维数组
在下面的示例中,我们使用 numpy.row_stack() 沿列堆叠两个形状匹配的二维数组。这些数组将沿第一个轴连接起来,生成一个二维数组 -
import numpy as np my_Array1 = np.array([[29, 73], [16, 34]]) my_Array2 = np.array([[64, 82], [53, 99]]) row_stacked_array = np.row_stack((my_Array1, my_Array2)) print("数组 1 - ", my_Array1) print("数组 2 - ", my_Array2) print("行堆叠数组 - ", row_stacked_array)
输出
上述代码的输出如下:
数组 1 - [[29 73] [16 34]] 数组 2 - [[64 82] [53 99]] 行堆叠数组 - [[29 73] [16 34] [64 82] [53 99]]
示例 - 堆叠不同形状的数组
如果输入数组的形状不兼容,例如一维数组的长度不匹配,或者二维数组沿其他轴的形状不同,numpy.row_stack() 将引发 ValueError。在以下示例中,我们尝试堆叠形状不兼容的数组:
import numpy as np array1 = np.array([1, 2, 3]) array2 = np.array([4, 5]) try: row_stacked_array = np.row_stack((array1, array2)) except ValueError as e: print("ValueError:", e)
输出
上述代码的输出如下:
ValueError: all input arrays must have the same shape along all but the first axis