我有一个HDF5文件,其中包含一个带有列名的2D表.当我在这个对象上掠夺时,它会在HDFView中显示出来results.
事实证明,这results是一个"复合数据集",一个一维数组,其中每个元素都是一行.以下是HDFView显示的属性:

我可以得到这个对象的句柄,让我们称之为res.
列名V2pt,R2pt等等.
我可以将整个数组作为数据读取,我可以读取一个元素
res[0,...,"V2pt"].
Run Code Online (Sandbox Code Playgroud)
这将返回列第一行中的数字V2pt.替换0为1将返回第二行值等.
如果我先知道colunm名称,那就行得通.但我没有.
我只是想获得整个数据集和它的列名.我怎样才能做到这一点?
我看到HDF5文档中的HDF5文档中有一个get_field_info函数,但我发现在h5py中没有这样的函数.
我搞砸了吗?
更好的是将此表作为pandas DataFrame读取的解决方案......
小智 12
这在h5py中很容易实现,就像Numpy中的复合类型一样.如果res是数据集的句柄,res.dtype.fields.keys()将返回所有字段名称的列表.
如果你需要知道具体的dtype东西,res.dtype.fields['V2pt']就会给它一些.
| 归档时间: |
|
| 查看次数: |
2350 次 |
| 最近记录: |