使用scipy.io loadmat将Matlab struct导入python时的值错误

使用scipy.io loadmat将Matlab struct导入python时的值错误,python,matlab,struct,scipy,Python,Matlab,Struct,Scipy,我有一个包含750x1双结构的Matlab文件。所有单元格都包含数字“18” 我用Python加载此文件,使用: loadmat(file_name, squeeze_me=True, struct_as_record=False) 令我惊讶的是,结果numpy.ndarray中的所有单元格都包含数字“19”(dtype int) 我试图设置mat\u dtype=True,但唯一的区别是结果类型。导入内容仍然是包含“19”而不是“18”的单元格 有人知道为什么会发生这种汇总/增量吗?scip

我有一个包含750x1双结构的Matlab文件。所有单元格都包含数字“18”

我用Python加载此文件,使用:

loadmat(file_name, squeeze_me=True, struct_as_record=False)
令我惊讶的是,结果numpy.ndarray中的所有单元格都包含数字“19”(dtype int)

我试图设置
mat\u dtype=True
,但唯一的区别是结果类型。导入内容仍然是包含“19”而不是“18”的单元格


有人知道为什么会发生这种汇总/增量吗?

scipy或loadmat没有错,结果我是个白痴,没有注意到我给变量分配了不同的结构(结果是填充了19s)


问题尴尬地解决了…

我不喜欢matlab和python,但请注意:有另一种加载文件的方法,这与我的问题无关。是否尝试使用numpy或pandas加载它?
scipy.io.loadmat
加载mat文件并将结构转换为numpy ndarray。从MATLAB
struct
到numpy数组的映射可能会令人困惑(对象数据类型数组的层等),但它不应更改元素的值。但是如果没有一个示例文件和/或一些代码,我们就无能为力。使用MATLAB代码,我可以生成一个具有
倍频程的.mat,并尝试加载它。