基于python读取.mat文件并取出信息


Posted in Python onDecember 16, 2019

这篇文章主要介绍了基于python读取.mat文件并取出信息,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

导入所需包

from scipy.io import loadmat

读取.mat文件

随便从下面文件里读取一个:

基于python读取.mat文件并取出信息

m = loadmat('H_BETA.mat') # 读出来的 m 是一个dict(字典)数据结构

读出来的m内容:

m:{'__header__': b'MATLAB 5.0 MAT-file, Platform: GLNXA64, Created on: Mon Aug 5 17:14:09 2019',
 '__version__': '1.0',
 '__globals__': [],
 'H_BETA': array([[ 0.68508148, 0.36764355, 0.73505849, ..., 0.27600164,
     0.67968929, 0.70506438],
    [ 0.74920812, 1.10949748, 0.47506305, ..., 0.32871445,
     0.61247345, 1.06948844],
    [ 0.83311522, 1.06321302, 0.97364609, ..., 0.85837753,
     0.96296771, 1.46095171],
    ...,
    [    nan,     nan,     nan, ...,     nan,
         nan, -9.04648469],
    [    nan,     nan,     nan, ...,     nan,
         nan,     nan],
    [    nan,     nan,     nan, ...,     nan,
In [29]: m.keys()
Out[29]: dict_keys(['__header__', '__version__', '__globals__', 'H_BETA'])

取出.mat里所需信息

.mat 文件里的数据结构是 dict ,所以取值要按照 key:value 的形式:

In [30]: m['H_BETA']
Out[30]:
array([[ 0.68508148, 0.36764355, 0.73505849, ..., 0.27600164,
     0.67968929, 0.70506438],
    [ 0.74920812, 1.10949748, 0.47506305, ..., 0.32871445,
     0.61247345, 1.06948844],
    [ 0.83311522, 1.06321302, 0.97364609, ..., 0.85837753,
     0.96296771, 1.46095171],
    ...,
    [    nan,     nan,     nan, ...,     nan,
        nan, -9.04648469],
    [    nan,     nan,     nan, ...,     nan,
        nan,     nan],
    [    nan,     nan,     nan, ...,     nan,
        nan,     nan]])

In [31]: type(m['H_BETA'])
Out[31]: numpy.ndarray

预处理数据

上面读出来的数据是 ndarray 类型,为了方便数据的展示,我们可以将其转换为,pandas的DataFrame:

In [32]: import pandas as pd
In [33]: df = pd.DataFrame(m['H_BETA'])
In [34]: df.head()
Out[34]:
    1     2     3     4     5     6     7     8     9     10  
 0.685081 0.367644 0.735058 0.085046 0.104332 0.560731 0.350219 0.758185 0.303823 0.114022 0.452877 
 0.749208 1.109497 0.475063 0.896100 1.117772 0.611356 0.662669 0.603077 0.863930 0.756870 0.725808 
 0.833115 1.063213 0.973646 0.935061 0.631670 0.916800 0.662993 0.543231 0.671558 1.027954 0.526402 
 0.488906 0.932741 0.956622 0.573116 0.893764 0.987304 0.380807 1.211157 0.550213 0.898408 1.153289 
 0.440694 0.503209 0.509693 0.477054 0.344717 -0.054662 1.124213 0.344906 0.612898 0.217625 -0.129715 

[5 rows x 2111 columns]

如此,数据就比较规整了,是保存成文件,还是做其他处理,就by yourself啦!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python struct模块解析
Jun 12 Python
用Python实现换行符转换的脚本的教程
Apr 16 Python
Python+django实现简单的文件上传
Aug 17 Python
python取余运算符知识点详解
Jun 27 Python
Python OrderedDict的使用案例解析
Oct 25 Python
tensorflow使用range_input_producer多线程读取数据实例
Jan 20 Python
python的列表List求均值和中位数实例
Mar 03 Python
python tkinter之顶层菜单、弹出菜单实例
Mar 04 Python
OpenCV实现机器人对物体进行移动跟随的方法实例
Nov 09 Python
利用Python将多张图片合成视频的实现
Nov 23 Python
python实战之用emoji表情生成文字
May 08 Python
Python实现拼音转换
Jun 07 Python
python基于plotly实现画饼状图代码实例
Dec 16 #Python
python 实现让字典的value 成为列表
Dec 16 #Python
python 列表、字典和集合的添加和删除操作
Dec 16 #Python
python实现字典嵌套列表取值
Dec 16 #Python
python绘制彩虹图
Dec 16 #Python
python 字典套字典或列表的示例
Dec 16 #Python
python绘制雪景图
Dec 16 #Python
You might like
深入理解用mysql_fetch_row()以数组的形式返回查询结果
2013/06/05 PHP
PHP使用memcache缓存技术提高响应速度的方法
2014/12/26 PHP
php+xml实现在线英文词典查询的方法
2015/01/23 PHP
php 批量查询搜狗sogou代码分享
2015/05/17 PHP
PHP Web木马扫描器代码分享
2015/09/06 PHP
PHP入门教程之图像处理技巧分析
2016/09/11 PHP
php微信公众平台开发之微信群发信息
2016/09/13 PHP
JavaScript入门教程(1) 什么是JS
2009/01/31 Javascript
jquery中eq和get的区别与使用方法
2011/04/14 Javascript
那些年,我还在学习jquery 学习笔记
2012/03/05 Javascript
页面装载js及性能分析方法介绍
2014/03/21 Javascript
javascript鼠标滑动评分控件完整实例
2015/05/13 Javascript
JS+CSS实现的漂亮渐变背景特效代码(6个渐变效果)
2016/03/25 Javascript
Angular.js之作用域scope'@','=','&'实例详解
2017/02/28 Javascript
javascript实现动态显示颜色块的报表效果
2017/04/10 Javascript
JS中的继承操作实例总结
2020/06/06 Javascript
javascript实现贪吃蛇小练习
2020/07/05 Javascript
vue使用video插件vue-video-player的示例
2020/10/03 Javascript
[51:06]2018DOTA2亚洲邀请赛3月29日 小组赛A组 KG VS Liquid
2018/03/30 DOTA
python远程登录代码
2008/04/29 Python
12步入门Python中的decorator装饰器使用方法
2016/06/20 Python
centos6.4下python3.6.1安装教程
2017/07/21 Python
基于python的图片修复程序(实现水印去除)
2018/06/04 Python
python3结合openpyxl库实现excel操作的实例代码
2018/09/11 Python
Django model序列化为json的方法示例
2018/10/16 Python
python简单验证码识别的实现方法
2019/05/10 Python
pyqt5实现按钮添加背景图片以及背景图片的切换方法
2019/06/13 Python
Python中面向对象你应该知道的一下知识
2019/07/10 Python
canvas像素画板的实现代码
2018/11/21 HTML / CSS
浅谈Html5页面打开app的一些思考
2020/03/30 HTML / CSS
物流仓储实习自我鉴定
2013/09/25 职场文书
团支书竞选演讲稿
2014/04/28 职场文书
2014法院干警廉洁警示教育思想汇报
2014/09/13 职场文书
预备党员考察意见范文
2015/06/01 职场文书
同事离别感言
2015/08/04 职场文书
画错魏国疆域啦!《派对咖孔明》动画因作画失误于官网致歉
2022/04/07 日漫