hdf5文件到熊猫数据帧

问题描述:

我下载了一个存储在.h5文件中的数据集。 我需要只保留某些列,并能够操纵其中的数据。hdf5文件到熊猫数据帧

要做到这一点,我试图加载它在一个熊猫数据框。我试着使用:

pd.read_hdf(path) 

,但我得到:No dataset in HDF5 file.

我发现在SO(read HDF5 file to pandas DataFrame with conditions)的答案,但我并不需要的条件,得到的答复将有关文件如何条件是写的,但我不是该文件的创建者,所以我无法对此做任何事情。

我使用h5py也尝试:

df = h5py.File(path) 

但是,这是不容易操纵,我似乎无法得到各列,它(仅使用df.keys()列的名称) 任何如何做到这一点的想法?

您的HDF文件似乎是空的......

这里是一个小的演示,它展示了如何发掘您的HDF文件:

In [4]: fn = r'D:\temp\.data\test.h5' 

In [5]: store = pd.HDFStore(fn) 

In [6]: print(store) 
<class 'pandas.io.pytables.HDFStore'> 
File path: D:\temp\.data\test.h5 
/test   frame_table (typ->appendable,nrows->7,ncols->4,indexers->[index],dc->[Col1,Col2,Col3,Col4]) 

In [7]: df = store.select('test') 

In [8]: df 
Out[8]: 
     Col1  Col2 Col3 Col4 
0  what  the  0  0 
1  are curves  1  8 
2  men  of  2 16 
3   to  your  3 24 
4  rocks  lips  4 32 
5  and rewrite  5 40 
6 mountains history.  6 48 

熊猫HDF支持需要被格式化的HDF文件非常具体。你可以看到https://*.com/a/33644128/4128030了解更多信息。

+0

是的。更多关于此[这里](https://*.com/a/30787168/4653485)以及。 –