读HDF5格式的文件

这里写自定义目录标题

  • HDF格式简介
  • python读取HDF文件

HDF格式简介

HDF(Hierarchical Data Format)指一种为存储和处理大容量科学数据设计的文件格式及相应库文件。其中Hierarchical层级结构的意思,也就是说,HDF的文件结构是分层的,像文件夹一样,上层文件夹套下层文件夹。

python读取HDF文件

现在比较常用的HDF文件的格式是HDF5,可以使用python的h5py库来读取。
下面提供的这个函数,可以输入文件名,读取HDF5文件,输出numpy的DataFrame格式的数据。

import h5py
import numpy as np
import pandas as pd
def read_hdf(ff):f = h5py.File(ff,'r')print('f',type(f))df = pd.DataFrame()for group in f.keys():print(group)#根据一级组名获得其下面的组group_read = f[group]
#         print('group_read',type(group_read),isinstance(group_read,h5py._hl.group.Group))if isinstance(group_read,h5py._hl.group.Group):#遍历该一级组下面的子组for subgroup in group_read.keys():#             print(subgroup)     #根据一级组和二级组名获取其下面的dataset          dset_read = f[group+'/'+subgroup]                           #遍历该子组下所有的datasetfor dset in dset_read.keys():#获取dataset数据dset1 = f[group+'/'+subgroup+'/'+dset]
#                     print('dset1',type(dset1))#                 print(dset1.name)data = np.array(dset1)#             print(data,type(data),data.shape)#添加到DataFrame中df = pd.concat([df,pd.DataFrame({dset1.name:list(data)})],axis=1)elif isinstance(group_read,h5py._hl.dataset.Dataset):data = np.array(group_read)df = pd.concat([df,pd.DataFrame({group:list(data)})],axis=1)
#     print(df)return df

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/84986.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Vim编辑器使用入门

目录 一、Vim 编辑器基础操作 二、Vim 编辑器进阶操作 三、Vim 编辑器高级操作 四、Vim 编辑器文件操作 五、Vim 编辑器文件管理 六、Vim 编辑器进阶技巧 七、Vim 编辑器增强功能 Vim的三种工作模式 一、Vim 编辑器基础操作 1.移动光标 - 光标的移动控制 移动光标有两…

计算机网络常见面试题

目录 一、谈一谈对OSI七层模型和TCP/IP四层模型的理解? 答:OSI七层模型主要分为: TCP/IP四层协议: 二、谈谈TCP协议的3次握手过程? 三、TCP协议为什么要3次握手?2次,4次不行吗? …

微信这样的加人方式,既安全又解放双手

在当今竞争激烈的市场环境下,如何高效地管理和运营私域流量成为企业发展的关键。 1.批量自动化加好友的优势 (1)提高效率:批量自动化添加好友功能可以帮助企业添加大量潜在客户或目标客户。相比手动逐个添加好友,自动…

嵌入式Linux驱动开发(I2C专题)(七)

使用GPIO操作I2C设备_IMX6ULL 参考资料: Linux文档 Linux-5.4\Documentation\devicetree\bindings\i2c\i2c-gpio.yamlLinux-4.9.88\Documentation\devicetree\bindings\i2c\i2c-gpio.txt Linux驱动源码 Linux-5.4\drivers\i2c\busses\i2c-gpio.cLinux-4.9.88\driv…

spring boot 时间格式化输出

目录标题 一、spring boot 序列化二、 JsonFormat(pattern "yyyy-MM-dd HH:mm:ss")和JSONField(format "yyyy-MM-dd HH:mm:ss")区别三、在实体类中序列化时间(格式化输出)(一)使用JsonFormat(二…

【校招VIP】产品基础知识之学习渠道

考点介绍: 产品经理是一项复合型的工作,需要学习掌握的知识很多,能否通过学习掌握并构建一套属于自己的产品知识体系,是成为一名优秀产品经理的重要条件。系统化学习方法,可以分为以下6个步骤: 1、明确的学…

robotframework在Jenkins执行踩坑

1. Groovy Template file [robot_results.groovy] was not found in $JENKINS_HOME/email_template 1.需要在managed files 添加robot_results.groovy。这个名字需要和配置在构建项目里default content一致(Extended E-mail Notification默认设置里Default Content…

如何利用物联网技术打造新型智能餐饮连锁店

中国是美食大国,餐饮美食的消费需求庞大,随着餐饮产业的标准化、规模化发展,餐饮店的连锁化率在持续上升,许多餐饮知名品牌都开设了成百上千家连锁店。随着餐饮连锁店数量的增加,对品牌店铺的管理和运营难度也日益增长…

【C语言】字符函数和字符串函数(含模拟)

前言: 在做OJ题或阅读代码时或多或少会遇到一些字符函数和字符串函数, 如果不认识或不熟悉就会造成不便, 本篇文章主要是为了这方面而存在, 此篇介绍各个字符串的功能与使用方法, 下一篇会讲解如何模拟这些函数 重点&a…

Java 初学者必备核心基础知识有哪些?

Java SE基础-->Java Web-->Maven-->Git-->SSM框架 -->MybatisPlus-->Spring Boot-->传智健康【医疗行业】--> Spring Cloud-->Dubbo-->Zookeeper-->RabbitMQ-->RocketMQ-->Docker-->Redis -->MongoDB-->搜索技术Elasticsearch…

Nginx核心要领十五:离线安装Nginx

写这边文章的原因是上线环境被扫描出两个漏洞 1.SSL/TLS协议信息泄漏漏洞(CVE-2016-2183)原理扫描 1.1.需要修改算法:ssl_ciphers HIGH:!aNULL:!MD5:!3DES; 2.Nginx安全漏洞(CVE-2021-23017) 2.1.需要升级OpenSSL版本…

大模型从入门到应用——LangChain:代理(Agents)-[计划与执行]

分类目录:《大模型从入门到应用》总目录 LangChain系列文章: 基础知识快速入门 安装与环境配置链(Chains)、代理(Agent:)和记忆(Memory)快速开发聊天模型 模型(Models&…

javax.validation.constraints校验

这个必须配合Validated 使用 三者都得不为null (没有参数传过来即为null ) notNull 可以为空白或空格(长度不限) NotEmpty 长度要大于0 (可以为空格,因为空格也有长度) NotBlank 只能用在 string ,并且去掉空格之后要大于0

软件测试商城项目优惠券超发问题该怎么测试?

【2023性能测试完整版】这可能是B站讲得最好的软件测试课程(Jmeter 接口测试实战 Loadrunner Tomcat综合教程)软件测试面试、自动化测试。 在拼夕夕面试中,面试官问了一连串经典的问题:“优惠券库存是怎么扣减的?开发为…

k8s-2 集群升级

首先导入镜像到本地 然后上传镜像到仓库 在所有集群节点 部署cri-docker k8s从1.24版本开始移除了dockershim,所以需要安装cri-docker插件才能使用docker 配置cri-docker 升级master 节点 升级kubeadm 执行升级计划 修改节点套接字 腾空节点 升级kubelet 配置k…

通过conda创建纯净Python环境

参考conda create 怎么创建纯净的 Python3.6 环境? 创建一个干净的python3.10的环境: 当前目录下创建一个environment.txt文件,写入: EXPLICIT https://repo.anaconda.com/pkgs/main/linux-64/python-3.10.13-h955ad1f_0.tar.bz…

Spring相关

spring工作原理简单介绍循环依赖问题spring/spring boot启动加载过程 ?springboot是怎么运行起来的 使用springboot的好处是什么?描述下spring的ioc和aopspring task是怎么实现的?spring事务你是怎么用的?加了@Transcational注解spring都做了哪些工作?怎么知道事务执行成功…

uniapp瀑布流布局写法

首先我们要清楚瀑布流是什么? 瀑布流布局(Waterfall Flow Layout),也称为瀑布流式布局,是一种常见的网页或移动应用布局方式,特点是元素以不规则的方式排列,就像瀑布中的流水一样,每…

github 网页显示不全?

问题 解决 1、检查网页,打开 network,重新刷新 github 网页 2、查看无法加载的资源(如 css 文件) 3、查看域名地址 https://tool.chinaz.com/dns/,github.githubassets.com(检查网页元素,点击无…

【从0学习Solidity】 6. 引用类型, array, struct

【从0学习Solidity】 6. 引用类型, array, struct 博主简介:不写代码没饭吃,一名全栈领域的创作者,专注于研究互联网产品的解决方案和技术。熟悉云原生、微服务架构,分享一些项目实战经验以及前沿技术的见解。关注我们的主页&…