scipy.io.matlab.

savemat#

scipy.io.matlab.savemat(file_name, mdict, appendmat=True, format='5', long_field_names=False, do_compression=False, oned_as='row')[source]#

将名称和数组的字典保存在类-MATLAB .mat 文件中。

会将给定字典中的阵列对象保存在 MATLAB 风格的 .mat 文件中。

参数:
file_namestr 或文件类似对象

.mat 文件的名称(如果 appendmat == True,则不需要 .mat 扩展名)。也可以传递打开的文件类似对象。

mdictdict

用于保存 matfile 变量的字典。

appendmatbool,可选

True(默认值)以将 .mat 扩展名追加到给定文件名末尾,如果还没有存在此扩展名。

format{‘5’, ‘4’},字符串,可选

为 MATLAB 5 及更高版本(至 7.2),‘4’ 适用于 MATLAB 4 .mat 文件(默认值为‘5’)。

long_field_namesbool,可选

False(默认值)表示结构中的最大字段名称长度为 31 个字符,这是记录的最大长度。True 表示结构中的最大字段名称长度为 63 个字符,适用于 MATLAB 7.6+。

do_compressionbool,可选

是否在写入时压缩矩阵。默认值为 False。

oned_as{‘row’, ‘column’}, 可选

如果为‘column’,会将 1 维 NumPy 数组写入为列向量。如果为‘row’,会将 1 维 NumPy 数组写入为行向量。

示例

>>> from scipy.io import savemat
>>> import numpy as np
>>> a = np.arange(20)
>>> mdic = {"a": a, "label": "experiment"}
>>> mdic
{'a': array([ 0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11, 12, 13, 14, 15, 16,
    17, 18, 19]),
'label': 'experiment'}
>>> savemat("matlab_matrix.mat", mdic)