基于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聚类算法之基本K均值实例详解
Nov 20 Python
Python3网络爬虫之使用User Agent和代理IP隐藏身份
Nov 23 Python
python中文乱码不着急,先看懂字节和字符
Dec 20 Python
python实现数据分析与建模
Jul 11 Python
python实现输出一个序列的所有子序列示例
Nov 18 Python
Pyspark获取并处理RDD数据代码实例
Mar 27 Python
Python小白不正确的使用类变量实例
May 29 Python
PyTorch如何搭建一个简单的网络
Aug 24 Python
python 实现性别识别
Nov 21 Python
pycharm激活码2020最新分享适用pycharm2020最新版亲测可用
Nov 22 Python
详解python定时简单爬取网页新闻存入数据库并发送邮件
Nov 27 Python
python实现不同数据库间数据同步功能
Feb 25 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文字水印和php图片水印实现代码(二种加水印方法)
2013/12/25 PHP
跟我学Laravel之安装Laravel
2014/10/15 PHP
Yii2框架实现登录、退出及自动登录功能的方法详解
2017/10/24 PHP
html下载本地
2006/06/19 Javascript
js innerHTML 的一些问题的解决方法
2008/06/22 Javascript
关于eval 与new Function 到底该选哪个?
2013/04/17 Javascript
NodeJS url验证(url-valid)的使用方法
2013/11/18 NodeJs
jquery判断元素是否隐藏的多种方法
2014/05/06 Javascript
JS创建类和对象的两种不同方式
2014/08/08 Javascript
jQuery应用之jQuery链用法实例
2015/01/19 Javascript
jquery实现横向图片轮播特效代码分享
2015/11/19 Javascript
node.js版本管理工具n无效的原理和解决方法
2016/11/24 Javascript
浅谈html转义及防止javascript注入攻击的方法
2016/12/04 Javascript
根据Bootstrap Paginator改写的js分页插件
2016/12/25 Javascript
动态加载css方法实现和深入解析
2017/01/18 Javascript
angular实现商品筛选功能
2017/02/01 Javascript
基于HTML5+JS实现本地图片裁剪并上传功能
2017/03/24 Javascript
浅谈webpack打包之后的文件过大的解决方法
2018/03/07 Javascript
微信小程序使用wx.request请求服务器json数据并渲染到页面操作示例
2019/03/30 Javascript
nodejs实现用户登录路由功能
2019/05/22 NodeJs
详细介绍Python语言中的按位运算符
2013/11/26 Python
python之Flask实现简单登录功能的示例代码
2018/12/24 Python
Python/Django后端使用PIL Image生成头像缩略图
2019/04/30 Python
基于Keras中Conv1D和Conv2D的区别说明
2020/06/19 Python
迪拜航空官方网站:flydubai
2017/04/20 全球购物
德国购买健身器材:AsVIVA
2017/08/09 全球购物
耐克波兰官方网站:Nike波兰
2019/09/03 全球购物
Ajxa常见问题都有哪些
2014/03/26 面试题
《梅兰芳学艺》教学反思
2014/02/24 职场文书
模范教师事迹材料
2014/12/16 职场文书
2016年区委书记抓基层党建工作公开承诺书
2016/03/25 职场文书
八年级地理课件资料及考点知识分享
2019/08/30 职场文书
“爱眼护眼,提前预防近视”倡议书3篇
2019/10/30 职场文书
python基础详解之if循环语句
2021/04/24 Python
vue数据字典取键值项目的字典问题
2022/04/12 Vue.js
win10此电脑打不开怎么办 win10双击此电脑无响应的解决办法
2022/07/23 数码科技