天道酬勤,学无止境

hdfql

使用属性从 H5 文件中过滤 HDF 数据集(Filter HDF dataset from H5 file using attribute)

问题 我有一个包含多个组和数据集的 h5 文件。 每个数据集都有关联的属性。 我想根据与之关联的相应属性在这个 h5 文件中查找/过滤数据集。 例子: dataset1 =cloudy(attribute) dataset2 =rainy(attribute) dataset3 =cloudy(attribute) 我想找到weather属性/元数据为cloudy的数据集 以pythonic方式完成这项工作的最简单方法是什么。 回答1 有两种使用 Python 访问 HDF5 数据的方法: h5py和pytables 。 两者都很好,具有不同的功能: h5py (来自 h5py FAQ):尝试将 HDF5 功能集尽可能地映射到 NumPy。 有人说这让 h5py 更加“pythonic”。 PyTables (来自 PyTables FAQ):在 HDF5 和 NumPy 之上构建一个额外的抽象层。 它具有更广泛的搜索功能(与 h5py 相比)。 处理 HDF5 数据时,了解 HDF5 数据模型很重要。 这超出了本文的范围。 为简单起见,将数据模型视为文件系统; 其中“组”和“数据集”就像“文件夹”和“文件”。 两者都可以有属性。 “节点”是用于指代“组”或“数据集”的术语。 @Kiran Ramachandra 用h5py概述了一种方法。 由于您使用pytables标记了您的帖子

2021-10-24 06:46:40    分类:技术分享    python   hdf5   h5py   pytables   hdfql

HDFql 处理表格(HDFql working with tables)

问题 我对 HDFql 的可用性有一些疑问: HDFql 是否支持创建行类型不同的表? 如何将数据附加到表中? 你如何迭代虽然行做表? 我要创建的表将包含 1 到 2^n 行的任何内容,并且无法事先确定。 回答1 以下是有关您有关 HDFql 的问题的一些信息: 如果“ HDFql 支持创建了一个行是不同类型的表”,您的意思是 HDFql 支持复合数据类型,那么答案还不是。 (编辑:由于现在支持 HDFql 2.2.0 版复合数据类型) 要将数据附加到数据集中(无法事先确定其大小),您必须经过几个步骤(我假设您使用的是 C 编程语言): 2.1. 数据集必须是可扩展的。 例如,您可以在 HDFql 中创建一个可扩展的数据集,如下所示(这将创建一个名为dset的具有无限大小的整数数据类型的数据集): hdfql_execute("CREATE CHUNKED DATASET dset AS INT(UNLIMITED)"); 2.2. 使用dset在数据集dset的最后一行写入一个值,如下所示(用您想写入数据集的整数替换my_value ): hdfql_execute("INSERT INTO dset(-1:1:1:1) VALUES(my_value)"); 2.3. 将值写入数据集dset ,如果有更多值要写入,首先增加(即更改)维度一单位,如下所示,然后重复步骤 2.2。:

2021-10-23 08:25:40    分类:技术分享    hdf   hdfql

HDFql working with tables

I have some question on the usability of HDFql: Does HDFql support created of a table where the row are of different type? How do you append data to the table? How do you iterate though the row do the table? The table I want to create will have any thing 1 to 2^n rows and cannot be determine before hand.

2021-09-07 15:07:26    分类:问答    hdf   hdfql

Filter HDF dataset from H5 file using attribute

I have an h5 file containing multiple groups and datasets. Each dataset has associated attributes. I want to find/filter the datasets in this h5 file based upon the respective attribute associated with it. Example: dataset1 =cloudy(attribute) dataset2 =rainy(attribute) dataset3 =cloudy(attribute) I want to find the datasets having weather attribute/metadata as cloudy What will be the simplest approach to get this done in pythonic way.

2021-08-30 06:39:13    分类:问答    python   hdf5   h5py   pytables   hdfql