如何读取mat文件 python

 我来答
从空去听8
2017-11-17 · TA获得超过7442个赞
知道大有可为答主
回答量:6907
采纳率:93%
帮助的人:5789万
展开全部

一、mat文件

mat数据格式是Matlab的数据存储的标准格式。在Matlab中主要使用load()函数导入一个mat文件,使用save()函数保存一个mat文件。对于文件

load('data.mat')


save('data_1.mat','A')



其中,'A'表示要保存的内容。

二、python中读取mat文件

在python中可以使用scipy.io中的函数loadmat()读取mat文件,函数savemat保存文件。

1、读取文件

如上例:

#coding:UTF-8


import scipy.io as scio

dataFile = 'E://data.mat'
data = scio.loadmat(dataFile)

注意,读取出来的data是字典格式,可以通过函数type(data)查看。

print type(data)


结果显示

<type 'dict'>


找到mat文件中的矩阵:

print data['A']

结果显示

[[ 0.          0.          0.          0.          0.          0.          0.
0.          0.          0.          0.          0.          0.          0.
。。。。。。。。。。。
0.          0.          0.          0.          0.          0.          0.
0.36470588  0.90196078  0.99215686  0.99607843  0.99215686  0.99215686
0.78431373  0.0627451   0.          0.          0.          0.          0.
0.          0.          0.          0.          0.          0.          0.
。。。。。。。。。。。。
0.94117647  0.22745098  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.30196078
。。。。。。。
0.          0.          0.          0.          0.          0.          0.
0.          0.          0.          0.          0.          0.          0.        ]]


格式为:

<type 'numpy.ndarray'>


即为numpy中的矩阵格式。

2、保存文件

将这里的data['A']矩阵重新保存到一个新的文件dataNew.mat中:

dataNew = 'E://dataNew.mat'
scio.savemat(dataNew, {'A':data['A']})

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式