python读取mat文件生成h5文件的实现


Posted in Python onJuly 15, 2022

读取mat文件生成h5文件

1. Matlab生成 .mat 文件

p = rand(1,10);
q = ones(10);
save('pqfile.mat','p','q')

当用python读取 pqfile.mat 这个文件时,可以通过get§, get(q) 分别获得p、q的值。

2. 读取 .mat 文件

import scipy.io as io
data = io.loadmat(path)
data = data.get('KeyValue')

导入的mat文件为dict类型,在load之后需要用get函数将字典内的内容读出来才可以进行下一步的处理。

读取mat文件 基于h5py库

今天有个任务需要读取mat文件中的数据,由于版本的关系,无法使用 sio.loadmat 读取数据

最后使用的方案是 h5py,下面我将记录下,我使用h5py库读取mat中两种不同数据结构的方法,这个可浪费了我不少时间,特别是第一种数据结构,嵌套多了一层,在debug的时候,只能看到他的类型是h5py.h5r.Reference,没有其他有价值的内容,幸好在网上得到启发,然后成功地读取了数据。

h5py库的api 地址 https://docs.h5py.org/en/stable/quick.html 有不懂可以多查阅哦!收获还挺大的!

两种数据结构

数据结构1

fixcell 数据结构比较复杂

python读取mat文件生成h5文件的实现

一个list里面又嵌套了一个多维数据或者数据矩阵

python读取mat文件生成h5文件的实现

数据结构2

sizeData数据结构相对简单

python读取mat文件生成h5文件的实现

读取代码

import h5py
 
fix_data_file_location_path = r"E:\1dataset\salObj\datasets\fixations\xxxx.mat"
fix_data_file_size_path = r"E:\1dataset\salObj\datasets\fixations\xxxx.mat"
fixdata_loca_file =  h5py.File(fix_data_file_location_path,"r")
fixdata_size_file =  h5py.File(fix_data_file_size_path,"r")
 
# 第一种数据结构的读取代码,这个例子只是读取了第一个cell中的部分数据
fixCell = fixdata_loca_file["fixCell"]
# 获取第一个cell
fixCell_key = fixCell[0][0]
# 根据cell作为Key 从fixdata_loca_file中取值
obj = fixdata_loca_file[fixCell_key]
print(obj[2][:])
 
 
# 第二种数据结构的读取代码
sizeData = fixdata_size_file["sizeData"]
# 获取第一个cell sizeData[0][6] 0代表的是第一列  6代表的是第六行
height = sizeData[0][6]
weight = sizeData[1][6]
print(height,"  ",weight)

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python ljust rjust center输出
Sep 06 Python
使用Python的Supervisor进行进程监控以及自动启动
May 29 Python
Python中使用PIPE操作Linux管道
Feb 04 Python
python统计文本字符串里单词出现频率的方法
May 26 Python
Python类的用法实例浅析
May 27 Python
Python自定义函数定义,参数,调用代码解析
Dec 27 Python
Python实现重建二叉树的三种方法详解
Jun 23 Python
python语音识别实践之百度语音API
Aug 30 Python
python 字符串常用函数详解
Sep 11 Python
Django实现简单网页弹出警告代码
Nov 15 Python
Python使用Turtle库绘制一棵西兰花
Nov 23 Python
python热力图实现简单方法
Jan 29 Python
全网非常详细的pytest配置文件
Jul 15 #Python
Python如何加载模型并查看网络
Jul 15 #Python
Python绘制散点图之可视化神器pyecharts
Jul 07 #Python
Python可视化神器pyecharts之绘制箱形图
Jul 07 #Python
Python通用验证码识别OCR库ddddocr的安装使用教程
Jul 07 #Python
Django数据库(SQlite)基本入门使用教程
Jul 07 #Python
Python可视化神器pyecharts之绘制地理图表练习
You might like
基于php-fpm的配置详解
2013/06/03 PHP
PHP操作Memcache实例介绍
2013/06/14 PHP
php编写的抽奖程序中奖概率算法
2015/05/14 PHP
PHP使用Redis实现防止大并发下二次写入的方法
2017/10/09 PHP
javascript之卸载鼠标事件的代码
2007/05/14 Javascript
js Flash插入函数免激活代码
2009/03/31 Javascript
javascript 匿名函数的理解(透彻版)
2010/01/28 Javascript
jQuery实现的立体文字渐变效果
2010/05/17 Javascript
简易js代码实现计算器操作
2013/04/15 Javascript
解析Jquery取得iframe中元素的几种方法
2013/07/04 Javascript
仿当当网淘宝网等主流电子商务网站商品分类导航菜单
2013/09/25 Javascript
javascript面向对象之对象的深入理解
2015/01/13 Javascript
通过Jquery.cookie.js实现展示浏览网页的历史记录超管用
2015/10/23 Javascript
JS延时提示框实现方法详解
2015/11/26 Javascript
ReactNative页面跳转实例代码
2016/09/27 Javascript
Angular的$http与$location
2016/12/26 Javascript
JS开发中百度地图+城市联动实现实时触发查询地址功能
2017/04/13 Javascript
用 js 的 selection range 操作选择区域内容和图片
2017/04/18 Javascript
深入理解Vue Computed计算属性原理
2018/05/29 Javascript
小程序实现左滑删除效果
2019/07/25 Javascript
javascript前端和后台进行数据交互方法示例
2020/08/07 Javascript
Python struct.unpack
2008/09/06 Python
python smtplib模块实现发送邮件带附件sendmail
2018/05/22 Python
python3 实现一行输入,空格隔开的示例
2018/11/14 Python
浅析Python+OpenCV使用摄像头追踪人脸面部血液变化实现脉搏评估
2019/10/17 Python
python里glob模块知识点总结
2021/01/05 Python
Html5实现用户注册自动校验功能实例代码
2016/05/24 HTML / CSS
澳大利亚设计师服装在线:MISHA
2019/10/07 全球购物
中科方德软件测试面试题
2016/04/21 面试题
自我鉴定三原则
2014/01/13 职场文书
晚会邀请函范文
2014/01/24 职场文书
初中同学聚会邀请函
2014/02/03 职场文书
中等生评语大全
2014/05/04 职场文书
机关作风建设工作总结
2014/10/23 职场文书
幼儿园园务工作总结2015
2015/05/18 职场文书
SpringBoot中HttpSessionListener的简单使用方式
2022/03/17 Java/Android