gpt4 book ai didi

python - 是否可以从 Python 的 HDF5 文件中的复合数据集中读取字段名称?

转载 作者:太空狗 更新时间:2023-10-29 21:28:23 27 4
gpt4 key购买 nike

我有一个 HDF5 文件,其中包含一个带有列名的二维表。当我抢劫这个名为 results 的对象时,它会在 HDFView 中显示。

事实证明,results 是一个“复合数据集”,一个一维数组,其中每个元素都是一行。以下是 HDFView 显示的其属性:

Dataset properties

我可以获得这个对象的句柄,我们称它为 res

列名为V2ptR2pt

我可以读取整个数组作为数据,我可以读取一个元素

res[0,...,"V2pt"].

这将返回 V2pt 列第一行中的数字。将 0 替换为 1 将返回第二行值等。

如果我先验知道列名,这会起作用。但我没有。

我只想获取整个数据集它的列名。我该怎么做?

我看到 HDF5 documentation 中有一个 get_field_info 函数在 HDF5 文档中,但我在 h5py 中找不到这样的功能.

我搞砸了吗?

更好的解决方案是将此表作为 pandas DataFrame 读取...

最佳答案

这在 h5py 中很容易做到,就像 Numpy 中的复合类型一样工作。如果 res 是数据集的句柄,res.dtype.fields.keys() 将返回一个所有字段名称的列表。

如果您需要知道特定的dtyperes.dtype.fields['V2pt'] 之类的东西会提供它。

关于python - 是否可以从 Python 的 HDF5 文件中的复合数据集中读取字段名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37493928/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com