基于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 相关文章推荐
Windows上配置Emacs来开发Python及用Python扩展Emacs
Nov 20 Python
Python基于回溯法子集树模板解决全排列问题示例
Sep 07 Python
Python中装饰器高级用法详解
Dec 25 Python
Python中的并发处理之asyncio包使用的详解
Apr 03 Python
python 编码规范整理
May 05 Python
CentOS下Python3的安装及创建虚拟环境的方法
Nov 28 Python
使用python将请求的requests headers参数格式化方法
Jan 02 Python
Python实现读取txt文件中的数据并绘制出图形操作示例
Feb 26 Python
用Python写一个模拟qq聊天小程序的代码实例
Mar 06 Python
python实现Dijkstra算法的最短路径问题
Jun 21 Python
对YOLOv3模型调用时候的python接口详解
Aug 26 Python
keras 读取多标签图像数据方式
Jun 12 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
深入了解php4(2)--重访过去
2006/10/09 PHP
mcrypt启用 加密以及解密过程详细解析
2013/08/07 PHP
php计算两个日期时间差(返回年、月、日)
2014/06/19 PHP
php实现把url转换迅雷thunder资源下载地址的方法
2014/11/07 PHP
php实现数据库的增删改查
2017/02/26 PHP
PHP仿qq空间或朋友圈发布动态、评论动态、回复评论、删除动态或评论的功能(上)
2017/05/26 PHP
求得div 下 img的src地址的js代码
2007/02/28 Javascript
ExtJS下grid的一些属性说明
2009/12/13 Javascript
javascript使用activex控件的代码
2011/01/27 Javascript
Jquery为单选框checkbox绑定单击click事件
2012/12/18 Javascript
js鼠标滑过弹出层的定位IE6bug解决办法
2012/12/26 Javascript
利用js的Node遍历找到repeater的一个字段实例介绍
2013/04/25 Javascript
jQuery中clearQueue()方法用法实例
2014/12/29 Javascript
jQuery前端分页示例分享
2015/02/10 Javascript
jQuery实现自动滚动到页面顶端的方法
2015/05/22 Javascript
jQuery 移动端artEditor富文本编辑器
2016/01/11 Javascript
编写高质量JavaScript代码的基本要点
2016/03/02 Javascript
微信小程序 scroll-view实现上拉加载与下拉刷新的实例
2017/01/21 Javascript
JavaScript 详解预编译原理
2017/01/22 Javascript
Vue中使用的EventBus有生命周期
2018/07/12 Javascript
JavaScript实现图片上传并预览并提交ajax
2019/09/30 Javascript
vue 翻页组件vue-flip-page效果
2020/02/05 Javascript
javascript设计模式 ? 享元模式原理与用法实例分析
2020/04/15 Javascript
Python使用回溯法子集树模板解决爬楼梯问题示例
2017/09/08 Python
解决pycharm安装后代码区不能编辑的问题
2018/10/28 Python
python面试题Python2.x和Python3.x的区别
2019/05/28 Python
python openvc 裁剪、剪切图片 提取图片的行和列
2019/09/19 Python
python GUI库图形界面开发之PyQt5窗口控件QWidget详细使用方法
2020/02/26 Python
在python中求分布函数相关的包实例
2020/04/15 Python
Python如何实现Paramiko的二次封装
2021/01/30 Python
英国玛莎百货新西兰:Marks & Spencer New Zealand
2019/07/21 全球购物
国贸类专业毕业生的求职信分享
2013/12/08 职场文书
家长对学校的意见和建议
2015/06/03 职场文书
幽默导游词应该怎么写?
2019/08/26 职场文书
分布式锁为什么要选择Zookeeper而不是Redis?看完这篇你就明白了
2021/05/21 Redis
win10电脑老是死机怎么办?win10系统老是死机的解决方法
2022/08/05 数码科技