HDF5 中存储的数据维度

Dimensions of data stored in HDF5

我有几个 .h5 文件,其中包含使用 .to_hdf 方法创建的 Pandas DataFrame。我的问题很简单:是否可以在不将所有数据加载到 RAM 的情况下检索存储在 .h5 文件中的 DataFrame 的维度?

动机:存储在这些 HDF5 文件中的数据帧非常大(高达几 Gb)并且加载所有数据只是为了获得数据的形状非常耗时。

您可能想直接使用 PyTables。

API参考是here,但基本上:

from tables import *
h5file = open_file("yourfile.h5", mode="r")
print h5file.root.<yourdataframe>.table.shape
print len(h5file.root.<yourdataframe>.table.cols) - 1 # first col is an index

此外,为了清楚起见,打开数据集时 HDF5 不会读取所有数据。那将是 Pandas.

的一个特点