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,但对于大量数据来说这不是一个理想的解决措施。将问题遗留在此,若哪天解决了再进行补充。