www*_*iam 13 python string matlab scipy mat-file
我正在尝试使用scipy.io将文本字符串列表从Python导出到MATLAB.我想使用scipy.io,因为我想要的.mat文件应该包括数值矩阵(我在这里学到了)和文本单元格数组.
我试过了:
import scipy.io
my_list = ['abc', 'def', 'ghi']
scipy.io.savemat('test.mat', mdict={'my_list': my_list})
Run Code Online (Sandbox Code Playgroud)
在MATLAB中,我加载test.mat并获取一个字符数组:
my_list =
adg
beh
cfi
Run Code Online (Sandbox Code Playgroud)
如何让scipy.io将列表导出到MATLAB单元格数组中?
Jus*_*eel 13
你需要让my_list成为一个numpy对象的数组:
import scipy.io
import numpy as np
my_list = np.zeros((3,), dtype=np.object)
my_list[:] = ['abc', 'def', 'ghi']
scipy.io.savemat('test.mat', mdict={'my_list': my_list})
Run Code Online (Sandbox Code Playgroud)
然后它将以单元格格式保存.可能有更好的方法将它放入np.object,但我从Scipy文档中采用了这种方式.