Python 将 .mat 文件中的多个一维数组组合成二维数组
假设 .mat 文件中包含多个一维数组,每个数组的长度相同,可以使用 scipy 库中的 loadmat 函数将数据加载为一个字典,然后将字典中的每个数组转换为一列,最终组合成一个二维数组。
以下是一个示例代码:
import scipy.io
import numpy as np
# 加载 .mat 文件为一个字典
data = scipy.io.loadmat('data.mat')
# 提取字典中的每个一维数组,并转换为一列
columns = []
for key in data.keys():
if isinstance(data[key], np.ndarray) and len(data[key].shape) == 1:
column = data[key].reshape(-1, 1)
columns.append(column)
# 组合所有列成一个二维数组
matrix = np.hstack(columns)
这个代码使用 numpy 库中的 hstack 函数将所有列组合成一个二维数组。需要注意的是,如果数据中包含非一维数组或不同长度的一维数组,上述代码可能会出错。
原文地址: https://www.cveoy.top/t/topic/mP4V 著作权归作者所有。请勿转载和采集!