Error when loading .mat file with scipy.io (ValueError: Mat 4 mopt wrong format)
Error when loading .mat file with scipy.io (ValueError: Mat 4 mopt wrong format)
我目前正在尝试使用 scipy 和以下代码在 python 中加载 .mat 文件:
from scipy import io as sio
data= "file.mat"
output= sio.loadmat(data)
但是当 运行 命令时我得到错误:
ValueError: Mat 4 mopt wrong format, byteswapping problem?
这条错误信息是什么意思?我尝试加载的文件有问题吗?
在编程方面我是新手,所以任何建议将不胜感激 :) 如果有更好的方法在 python 中加载 .mat 文件,我也愿意听取这些建议。提前致谢!
我以前从未见过这个错误,但它是由 scipy/scipy/io/matlab/mio4.py
中的第 113 行产生的
def read_header(self):
''' Read and return header for variable '''
data = read_dtype(self.mat_stream, self.dtypes['header'])
name = self.mat_stream.read(int(data['namlen'])).strip(b'\x00')
if data['mopt'] < 0 or data['mopt'] > 5000:
raise ValueError('Mat 4 mopt wrong format, byteswapping problem?')
...
通常 loadmat
是正确的文件加载器,至少在支持的类型中:
v4 (Level 1.0), v6 and v7 to 7.2 matfiles are supported.
你知道这个文件是如何在 MATLAB 中保存的吗?是否有诸如此类的格式规范?
我目前正在尝试使用 scipy 和以下代码在 python 中加载 .mat 文件:
from scipy import io as sio
data= "file.mat"
output= sio.loadmat(data)
但是当 运行 命令时我得到错误:
ValueError: Mat 4 mopt wrong format, byteswapping problem?
这条错误信息是什么意思?我尝试加载的文件有问题吗? 在编程方面我是新手,所以任何建议将不胜感激 :) 如果有更好的方法在 python 中加载 .mat 文件,我也愿意听取这些建议。提前致谢!
我以前从未见过这个错误,但它是由 scipy/scipy/io/matlab/mio4.py
中的第 113 行产生的def read_header(self):
''' Read and return header for variable '''
data = read_dtype(self.mat_stream, self.dtypes['header'])
name = self.mat_stream.read(int(data['namlen'])).strip(b'\x00')
if data['mopt'] < 0 or data['mopt'] > 5000:
raise ValueError('Mat 4 mopt wrong format, byteswapping problem?')
...
通常 loadmat
是正确的文件加载器,至少在支持的类型中:
v4 (Level 1.0), v6 and v7 to 7.2 matfiles are supported.
你知道这个文件是如何在 MATLAB 中保存的吗?是否有诸如此类的格式规范?