基于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 爬虫模拟登陆知乎
Sep 23 Python
python中解析json格式文件的方法示例
May 03 Python
python实现发送邮件功能
Jul 22 Python
itchat接口使用示例
Oct 23 Python
Python set常用操作函数集锦
Nov 15 Python
解决pandas中读取中文名称的csv文件报错的问题
Jul 04 Python
kafka-python批量发送数据的实例
Dec 27 Python
pyqt5实现登录界面的模板
May 30 Python
Python远程视频监控程序的实例代码
May 05 Python
Python如何批量获取文件夹的大小并保存
Mar 31 Python
Python HTMLTestRunner可视化报告实现过程解析
Apr 10 Python
使用OpenCV对车道进行实时检测的实现示例代码
Jun 19 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
PHP中对数据库操作的封装
2006/10/09 PHP
php下封装较好的数字分页方法
2010/11/23 PHP
MySQL 日期时间函数常用总结
2012/06/12 PHP
php mysql数据库操作类(实例讲解)
2017/08/06 PHP
详细分析PHP 命名空间(namespace)
2020/06/30 PHP
TNC vs IO BO3 第二场2.13
2021/03/10 DOTA
索趣科技的答案
2007/02/07 Javascript
出现“不能执行已释放的Script代码”错误的原因及解决办法
2007/08/29 Javascript
jQuery 属性选择器element[herf*='value']使用示例
2013/10/20 Javascript
使表格的标题列可左右拉伸jquery插件封装
2014/11/24 Javascript
jQuery+css实现百度百科的页面导航效果
2014/12/16 Javascript
JS动态修改iframe高度和宽度的方法
2015/04/01 Javascript
js+css实现select的美化效果
2016/03/24 Javascript
需要牢记的JavaScript基础知识
2016/09/25 Javascript
react-router4 嵌套路由的使用方法
2017/07/24 Javascript
微信小程序动态生成二维码的实现代码
2018/07/25 Javascript
微信小程序页面上下滚动效果
2020/11/18 Javascript
浅谈Vue项目骨架屏注入实践
2019/08/05 Javascript
weui中的picker使用js进行动态绑定数据问题
2019/11/06 Javascript
antd中table展开行默认展示,且不需要前边的加号操作
2020/11/02 Javascript
element-ui 弹窗组件封装的步骤
2021/01/22 Javascript
Python实现对PPT文件进行截图操作的方法
2015/04/28 Python
Python实现学校管理系统
2018/01/11 Python
用于业余项目的8个优秀Python库
2018/09/21 Python
python实现停车管理系统
2018/11/30 Python
python匿名函数用法实例分析
2019/08/03 Python
python批量合成bilibili的m4s缓存文件为MP4格式 ver2.5
2020/12/01 Python
Carolina Lemke Berlin澳大利亚官网:时尚太阳镜品牌
2019/09/17 全球购物
CHARLES & KEITH加拿大官网:新加坡时尚品牌
2020/03/26 全球购物
EJB3.1都有哪些改进
2012/11/17 面试题
师范生实习自我鉴定
2013/11/01 职场文书
四年的个人工作自我评价
2013/12/10 职场文书
销售团队获奖感言
2014/08/14 职场文书
基层党组织整改方案
2014/10/25 职场文书
Python使用psutil库对系统数据进行采集监控的方法
2021/08/23 Python
Mysql调整优化之四种分区方式以及组合分区
2022/04/13 MySQL