python读取并写入mat文件的方法


Posted in Python onJuly 12, 2019

先给大家介绍下python读取并写入mat文件的方法

用matlab生成一个示例mat文件:

clear;clc
matrix1 = magic(5);
matrix2 = magic(6);
save matData.mat

用python3读取并写入mat文件:

import scipy.io
data = scipy.io.loadmat('matData.mat') # 读取mat文件
# print(data.keys())  # 查看mat文件中的所有变量
print(data['matrix1'])
print(data['matrix2'])
matrix1 = data['matrix1'] 
matrix2 = data['matrix2']
print(matrix1)
print(matrix2)
scipy.io.savemat('matData2.mat',{'matrix1':matrix1, 'matrix2':matrix2}) # 写入mat文件

ps:python读取matlab写的mat文件问题以及解决办法

最近项目中需要在python下读取mat文件,遇到以下问题:

1、当数据集大小大于2GB的时候,Python就不能正确读取mat文件了。同时matlab也不能保存相应的文件,只能以 -V7.3的形式保存。具体如下:

#利用h5py读取-v7.3的.mat文件:
import h5py
dict_data = h5py.File('***.mat')  #在Python中读取的.mat为字典格式
array_data = dict_data['array_name'] 
#其中的array_name为在保存为.mat之前的真正变量名,如 MATLAB命令:save ***.mat array_name -v7.3

2、当文件以h5py写入时,最终会出现python读取到的和matlab写入的数据维度不相同的问题。比如写入的是(1000,128,128,3)但是python读取到的维度就是(128,128,3,1000)。所以需要对python读取到的文件进行转置的处理。具体如下:

data_train = h5py.File('train_order6.mat','r')
input_train = data_train['z_wrap']
input_train = np.transpose(input_train,(0,2,1)) #The shape is changed to be consistent with tensoflow [25000,128,128]->[25000,128,128]
input_train = np.expand_dims(input_train,axis=3) #[25000,128,128]->[25000,128,128,1]
label_train = data_train['z_allRegion']
label_train = np.transpose(label_train,(0,3,2,1))#The shape is changed to be consistent with tensoflow [25000,11,128,128]->[25000,128,128,11]

一般都是第一维度和最后一个维度错误,所以都是(0,3,2,1)的形式,不过为了确保正确还是建议在读取的时候显示一下图片。

3、可以在用matlab存储时,提前permute一下,python正常读取,或者matlab正常存储,python读取后transpose一下。步骤2就是matlab正常存储,python读取后transpose.

总结

以上所述是小编给大家介绍的python读取并写入mat文件的方法 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
在Python中使用HTML模版的教程
Apr 29 Python
Python 两个列表的差集、并集和交集实现代码
Sep 21 Python
Python使用正则表达式实现文本替换的方法
Apr 18 Python
Python学习之Django的管理界面代码示例
Feb 10 Python
Python操作MySQL模拟银行转账
Mar 12 Python
Random 在 Python 中的使用方法
Aug 09 Python
Python 分发包中添加额外文件的方法
Aug 16 Python
python安装scipy的步骤解析
Sep 28 Python
python3.7 利用函数os pandas利用excel对文件名进行归类
Sep 29 Python
python实现移动木板小游戏
Oct 09 Python
如何用Python和JS实现的Web SSH工具
Feb 23 Python
拒绝盗图!教你怎么用python给图片加水印
Jun 04 Python
numpy数组广播的机制
Jul 12 #Python
Python的numpy库下的几个小函数的用法(小结)
Jul 12 #Python
python读取.mat文件的数据及实例代码
Jul 12 #Python
如何用Python破解wifi密码过程详解
Jul 12 #Python
python pip源配置,pip配置文件存放位置的方法
Jul 12 #Python
Python3 itchat实现微信定时发送群消息的实例代码
Jul 12 #Python
flask应用部署到服务器的方法
Jul 12 #Python
You might like
用Simple Excel导出xls实现方法
2012/12/06 PHP
Zend Framework 2.0事件管理器(The EventManager)入门教程
2014/08/11 PHP
高质量PHP代码的50个实用技巧必备(上)
2016/01/22 PHP
详解在PHP的Yii框架中使用行为Behaviors的方法
2016/03/18 PHP
innerText和textContent对比及使用介绍
2013/02/27 Javascript
浅谈JSON和JSONP区别及jQuery的ajax jsonp的使用
2014/11/23 Javascript
Jquery跨域获得Json的简单实例
2016/05/18 Javascript
JAVA Web实时消息后台服务器推送技术---GoEasy
2016/11/04 Javascript
Angularjs实现分页和分页算法的示例代码
2016/12/23 Javascript
详解利用 Vue.js 实现前后端分离的RBAC角色权限管理
2017/09/15 Javascript
JavaScript中错误正确处理方式小结你用对了吗
2017/10/10 Javascript
巧妙运用v-model实现父子组件传值的方法示例
2019/04/07 Javascript
让 babel webpack vue 配置文件支持智能提示的方法
2019/06/22 Javascript
js遍历详解(forEach, map, for, for...in, for...of)
2019/08/28 Javascript
使用cx_freeze把python打包exe示例
2014/01/24 Python
零基础写python爬虫之抓取糗事百科代码分享
2014/11/06 Python
Python 实现购物商城,含有用户入口和商家入口的示例
2017/09/15 Python
Python读写/追加excel文件Demo分享
2018/05/03 Python
解决Python3 被PHP程序调用执行返回乱码的问题
2019/02/16 Python
pytorch制作自己的LMDB数据操作示例
2019/12/18 Python
Pandas中DataFrame基本函数整理(小结)
2020/07/20 Python
Python Flask异步发送邮件实现方法解析
2020/08/01 Python
python打包多类型文件的操作方法
2020/09/21 Python
Python+unittest+requests+excel实现接口自动化测试框架
2020/12/23 Python
CSS3之transition实现下划线的示例代码
2018/05/30 HTML / CSS
html5 css3实例教程 一款html5和css3实现的小机器人走路动画
2014/10/20 HTML / CSS
Kaufmann Mercantile官网:家居装饰、配件、户外及更多
2018/09/28 全球购物
阿联酋优惠券服务:Living Kool
2019/12/12 全球购物
小学教育毕业生自荐信
2013/11/18 职场文书
应用数学自荐书范文
2013/11/24 职场文书
社区国庆节活动总结
2015/03/23 职场文书
2015年中秋节主持词
2015/07/30 职场文书
民间借贷纠纷起诉书
2015/08/03 职场文书
mysql中varchar类型的日期进行比较、排序等操作的实现
2021/11/17 MySQL
SQL SERVER存储过程用法详解
2022/02/24 SQL Server
Python+pyaudio实现音频控制示例详解
2022/07/23 Python