scipy.io.

savemat#

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

将名称和数组的字典保存到 MATLAB 风格的 .mat 文件中。

此函数将给定字典中的数组对象保存到 MATLAB 风格的 .mat 文件中。

参数:
file_name字符串或文件类对象

.mat 文件的名称(如果 appendmat == True 则无需 .mat 扩展名)。也可以传入已打开的文件类对象。

mdict字典

用于保存 matfile 变量的字典。请注意,如果此字典的键以 _ 开头,或子字典的键以 _ 或数字开头,则这些键的项目将不会保存到 mat 文件中,并且将发出 MatWriteWarning 警告。

appendmat布尔值,可选

True(默认值)表示如果给定文件名中不存在 .mat 扩展名,则将其添加到文件名末尾。

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

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

long_field_names布尔值,可选

False(默认值)- 结构体中的最大字段名长度为 31 个字符,这是文档中规定的最大长度。True - 结构体中的最大字段名长度为 63 个字符,适用于 MATLAB 7.6+。

do_compression布尔值,可选

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

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

如果为 ‘column’,将一维 NumPy 数组写入为列向量。如果为 ‘row’,将一维 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)