在 hdf5 中设置标量固定长度字符串属性
set scalar fixed length string attribute in hdf5
我需要向 HDF 文件添加一些字符串标量属性,这是我的 python:
hdf = h5py.File('data.hdf', 'r+')
hdf['program'].attrs['filename'] = '.\cover.tif'
hdf['program'].attrs['gis'] = 'cover'
hdf.close()
这是有效的,因为它确实添加了两个属性,但是当我在 HDFViewer 中检查它们时,它们具有类型:String, length=variable
,我需要在类型中具有实际长度,例如:String, length=5
对于 'cover',我该怎么做?
必须使用如下所示的attrs.create方法:
hdf['program'].attrs.create('gis', 'cover', None, dtype='<S5')
参数是:
name: 'gis'
data: 'cover'
shape: None
dtype (Numpy dtype): '<S5'
dtype 参数中的最后一个 5 是标量字符串的长度。这样,属性的类型将为 String, length=5
我需要向 HDF 文件添加一些字符串标量属性,这是我的 python:
hdf = h5py.File('data.hdf', 'r+')
hdf['program'].attrs['filename'] = '.\cover.tif'
hdf['program'].attrs['gis'] = 'cover'
hdf.close()
这是有效的,因为它确实添加了两个属性,但是当我在 HDFViewer 中检查它们时,它们具有类型:String, length=variable
,我需要在类型中具有实际长度,例如:String, length=5
对于 'cover',我该怎么做?
必须使用如下所示的attrs.create方法:
hdf['program'].attrs.create('gis', 'cover', None, dtype='<S5')
参数是:
name: 'gis'
data: 'cover'
shape: None
dtype (Numpy dtype): '<S5'
dtype 参数中的最后一个 5 是标量字符串的长度。这样,属性的类型将为 String, length=5