python打开.mat文件(scipy读取时文件名后缀.mat可省略):
import scipy.io as sio
data = sio.loadmat(r"filename")
print(type(data))
print(data.keys())
print(data)
报错,在loadmat()时出错: zlib.error: Error -3 while decompressing data: incorrect data check
查看了scipy的相关源码也没有找到有关解压的部分。
继续查了很多资料,没有人在loadmat时出现过error -3。但找到了另一个读取mat文件的方法:
import mat4py
data = mat4py.loadmat("filename.mat")
print(data)
same error ┓( ´∀` )┏
后来确认了一下,所打开的.mat文件由于是C#直接生成的,可能对数据进行了未知的压缩。因此会涉及到解压的问题。
目前解决方案是将文件由MATLAB打开并重新生成matfile,但对于大量数据来说这不是一个理想的解决措施。将问题遗留在此,若哪天解决了再进行补充。

本文探讨了解决在Python中使用scipy和mat4py读取.mat文件时遇到的zlib.error错误-3的问题。错误源于文件由C#生成且可能包含未知压缩,导致解压失败。文中提供了一种临时解决方案,即通过MATLAB重新生成文件,但寻求更高效的批量处理方法。
2876

被折叠的 条评论
为什么被折叠?



