【发布时间】:2014-06-26 06:06:38
【问题描述】:
我正在使用 Python 将数据存储在 HDF5 数据库中。
每个数据集都有一个与之关联的属性列表。
我想检索具有给定属性值的所有数据集。
例如,一个属性是temperature,它的值可能是20.0。我想用temperature 或20.0 调用所有数据集。
有没有快速的方法来做到这一点?
【问题讨论】:
-
不要相信浮点相等比较。
我正在使用 Python 将数据存储在 HDF5 数据库中。
每个数据集都有一个与之关联的属性列表。
我想检索具有给定属性值的所有数据集。
例如,一个属性是temperature,它的值可能是20.0。我想用temperature 或20.0 调用所有数据集。
有没有快速的方法来做到这一点?
【问题讨论】:
这样的?
[fh[i] for i in fh if fh[i].attrs['temperature']==20]]
fh 是 hdf 文件句柄。
这将返回一个包含所有此类数据集的列表。如果您只想要他们的名字,请使用:
[i for i in fh if fh[i].attrs['temperature']==20]]
【讨论】: