Python 编写HDF h5数据集(通过h5py),它是字符串和numpy列表的混合体
我有以下两个数据集(我有几个Python 编写HDF h5数据集(通过h5py),它是字符串和numpy列表的混合体,python,hdf5,h5py,Python,Hdf5,H5py,我有以下两个数据集(我有几个元组): 我想知道如何通过h5py以紧凑的格式编写此文件。目标是让最终用户读取此h5数据文件,并能够推断列表及其相应的文件名 我能够有效地将numpy列表写入h5,但是字符串似乎是一个大问题,当我包含此内容时会出错 任何帮助都将是巨大的-浪费几个小时寻找解决方案 这一小块代码将创建一个名为something(来自变量filename\u string)的数据集,其中包含列表中的数据filename\u list import h5py filename_string=
元组
):
我想知道如何通过h5py以紧凑的格式编写此文件。目标是让最终用户读取此h5数据文件,并能够推断列表及其相应的文件名
我能够有效地将numpy列表写入h5,但是字符串似乎是一个大问题,当我包含此内容时会出错
任何帮助都将是巨大的-浪费几个小时寻找解决方案 这一小块代码将创建一个名为
something
(来自变量filename\u string
)的数据集,其中包含列表中的数据filename\u list
import h5py
filename_string= "something"
filename_list= [1,2,3,4,5]
with h5py.File('SO_63137136.h5','w') as h5f:
h5f.create_dataset(filename_string, data=filename_list)
我可以想象将
数据集命名为“某物”。或者将文件名\u字符串
指定为数据集的属性。通常,当人们出现错误时,我们希望看到问题代码和完整的错误消息。通常,帮助解决特定问题比建议一种海报可能已经尝试过的全新方法更容易。与“共享代码”相同。你是怎么写字符串的?作为属性?或者在具有字符串dtype的数组或记录数组(字段dtype是字符串)中?是的,这就是我所做的;我。。我最初尝试了一个更难的挑战:在HD5中编写一个元组,看起来是这样的:`(“字符串”,“列表元素”),无论如何,这似乎是不可能的。谢谢你的回答!如果重新组织数据,可以将其写入HDF5数据集。HDF5支持数据集中的混合数据类型(作为NumPy重新排列)。这假设保存“the_string”的字段可以是固定的字符串长度,[the_list_elements]可以转换为NumPy数组(常用数据类型:int、float或string)。
import h5py
filename_string= "something"
filename_list= [1,2,3,4,5]
with h5py.File('SO_63137136.h5','w') as h5f:
h5f.create_dataset(filename_string, data=filename_list)