我有一个由 Matlab 2012b 生成的 .mat 文件,其中包含一个用户定义的 Matlab 类变量。
在 Python 3.3 中使用 scipy.io.loadmat 加载文件时,出现以下情况:
mat=scipy.io.loadmat('D:\test.mat')
mat
{'__header__': b'MATLAB 5.0 MAT-file, Platform: PCWIN64, Created on: Fri Feb 22 15:26:28 2013', '__function_workspace__': array([[ 0, 1, 73, ..., 0, 0, 0]], dtype=uint8), '__globals__': [], '__version__': '1.0', 'None': MatlabOpaque([ (b'futureDS', b'MCOS', b'cStream', [[3707764736], [2], [1], [1], [1], [1]])],
dtype=[('s0', 'O'), ('s1', 'O'), ('s2', 'O'), ('arr', 'O')])}
我希望能够访问“futureDS”类型为“cStream”的对象,但似乎无法使用mat ['None']实现。调用mat['None']只会导致以下结果:
MatlabOpaque([ (b'futureDS', b'MCOS', b'cStream', [[3707764736], [2], [1], [1], [1], [1]])],
dtype=[('s0', 'O'), ('s1', 'O'), ('s2', 'O'), ('arr', 'O')])
我陷入了困境。我是Python的新手,正在试图将以前的Matlab工作移植过来。非常感谢您提供任何帮助。
谢谢。