在 Numpy 中按行垂直顺序堆叠数组
numpyserver side programmingprogramming更新于 2025/9/27 2:07:17
要按行垂直顺序堆叠数组,请使用 Python Numpy 中的 ma.row_stack() 方法。这相当于将形状为 (N,) 的一维数组重塑为 (1,N) 后,沿第一个轴进行连接。重建数组并除以 vsplit。返回由给定数组堆叠形成的数组,该数组至少为二维。
此函数最适用于最多 3 维的数组。例如,对于具有高度(第一个轴)、宽度(第二个轴)和 r/g/b 通道(第三个轴)的像素数据。函数 concatenate、stack 和 block 提供更通用的堆叠和连接操作。它同时应用于 _data 和 _mask(如果有)。
参数是数组,除第一个轴外,其他所有轴的形状都必须相同。一维数组的长度必须相同。
步骤
首先,导入所需的库 −
import numpy as np import numpy.ma as ma
使用 array() 方法创建一个新数组 −
arr = np.array([[200], [300], [400], [500]])
print("数组...
", arr)
数组类型 −
print("
数组类型...
", arr.dtype)
获取数组的维度 −
print("
数组维度...
",arr.ndim)
要按行顺序垂直堆叠数组,请使用 ma.row_stack() 方法 −
resArr = np.ma.row_stack (arr)
结果数组 −
print("
结果...
", resArr)
示例
# Python ma.MaskedArray - 按行顺序垂直堆叠数组
import numpy as np
import numpy.ma as ma
# 使用 array() 方法创建新数组
arr = np.array([[200], [300], [400], [500]])
print("数组...
", arr)
# 数组类型
print("
数组类型...
", arr.dtype)
# 获取数组的维度
print("
数组维度...
",arr.ndim)
# 要按行顺序垂直堆叠数组,请使用 Python Numpy 中的 ma.row_stack() 方法
resArr = np.ma.row_stack (arr)
# 结果数组
print("
结果...
", resArr)
输出
数组... [[200] [300] [400] [500]] 数组类型... int64 数组维度... 2 结果... [[200] [300] [400] [500]]

