参考资料:

在处理数据的时候可能会遇到原始数据储存在.mat文件的情况,mat文件当然就是matlab中保存的工作区文件啦,里面可能会有一个或者多个矩阵。给你一个mat文件你又想用python处理,该怎么办呢?

在网上找到了一个简单的解决方案,下面连带效果图一起贴出来:

import scipy.io as scio

train_imgs_path = 'train_imgs.mat'

train_imgs = scio.loadmat(train_imgs_path)

print(train_imgs)

{'__header__': b'MATLAB 5.0 MAT-file Platform: nt, Created on: Fri Apr 3 17:38:47 2020',

'__version__': '1.0',

'__globals__': [],

'train_imgs': array([[0, 0, 0, ..., 0, 0, 0],

[0, 0, 0, ..., 0, 0, 0],

[0, 0, 0, ..., 0, 0, 0],

...,

[0, 0, 0, ..., 0, 0, 0],

[0, 0, 0, ..., 0, 0, 0],

[0, 0, 0, ..., 0, 0, 0]], dtype=int32)

}

显然返回的是一个字典对象,在其中取出我们需要的数组即可。不过我很诧异的是这个数组的数据类型居然是ndarray,不管那么多了,好用就行。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐