python如何读取和保存mat文件

python如何读取和保存mat文件

这篇文章主要介绍了python如何读取和保存mat文件,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

一、mat文件

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

python如何读取和保存mat文件

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

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

python如何读取和保存mat文件

二、python中读取mat文件

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

1、读取文件

    如上例:

#coding:UTF-8
'''
Created on 2015年5月12日
@author: zhaozhiyong
'''
 
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']})

注意:是以字典的形式保存。

感谢你能够认真阅读完这篇文章,希望小编分享的“python如何读取和保存mat文件”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注行业资讯频道,更多相关知识等着你来学习!