📅  最后修改于: 2023-12-03 15:07:47.184000             🧑  作者: Mango
MATLAB 是数据科学领域常用的软件工具之一,它常常被用于数据处理和模型建立。为了方便在 MATLAB 和 Python 之间进行数据交互,Python 提供了 scipy.io
模块用于读取和保存 MATLAB 格式的数据文件。
import scipy.io as sio
# 读取 mat 文件
mat_file = sio.loadmat('data.mat')
# 获取变量
variable1 = mat_file['variable1']
variable2 = mat_file['variable2']
# 查看变量类型和形状
print(type(variable1))
print(variable1.shape)
以上代码通过 loadmat()
函数读取了名为 data.mat
的 .mat 文件,并将文件中的两个变量 variable1
和 variable2
分别保存到 Python 变量 variable1
和 variable2
中。
需要注意的是,由于 MATLAB 中的数组是以列序存储的,因此在 Python 中读取时需要特别注意数组维度的顺序,以避免错误地解析数据。
import numpy as np
import scipy.io as sio
# 创建要保存的变量
array1 = np.array([[1, 2, 3], [4, 5, 6]])
array2 = np.array([1.1, 2.2, 3.3])
# 保存到 mat 文件
sio.savemat('data.mat', {'array1': array1, 'array2': array2})
以上代码通过 savemat()
函数将两个 Numpy 数组 array1
和 array2
保存为名为 data.mat
的 .mat 文件。需要注意的是,这里将变量保存在一个字典中,并且使用了与变量名对应的键值进行了保存。
使用 scipy.io
模块很容易读取和保存 MATLAB 格式的数据。需要注意数据维度的顺序,避免解析和保存出错。