编程语言
首页 > 编程语言> > 使用python读取HDF4文件 – 多个具有相同名称的数据集

使用python读取HDF4文件 – 多个具有相同名称的数据集

作者:互联网

我有一个我需要用python阅读的HDF4文件.为此,我使用pyhdf.在大多数情况下,我很高兴使用SD类打开文件:

import pyhdf.SD  as SD
hdf = SD.SD(hdfFile)

然后继续

v1 = hdf.select('Data set 1')
v2 = hdf.select('Data set 2')

但是我在HDF文件中有几个组,并且一些变量出现在具有相同名称的多个组中:

在第1组中,我有数据集3,在第2组中,我有数据集3,所以我的选择命令只会选择其中一个(我不知道哪一个?).

有没有一种简单的方法可以从第1组中选择(读取)数据集3,然后从第2组中选择?

我看过V和VS模块.我找到了一个示例脚本,它将循环遍历所有组和子组等,并找到所有变量(数据集).但我现在有了如何将这些变量连接到父级的想法,因为我知道它们属于哪个组.

解决方法:

我认为pyhdf可能不是这个特定任务的最佳选择.你看过PyNIO吗?

HDF section of their documentation开始:

PyNIO has a read-only ability to understand HDF Vgroups. When a variable that is part of a Vgroup is encountered, PyNIO appends a double underscore and the group number to the end of the variable name. This ensures that the variable will have a unique name, relative to variables that belong to other Vgroups. It also provides two additional attributes to the variable: hdf_group, whose value is the HDF string name of the group, and hdf_group_id, whose value is the same as the group number appended to the end of the variable name.

标签:python,hdf
来源: https://codeday.me/bug/20190711/1433333.html