在 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]]

相关文章