web-dev-qa-db-ja.com

hdf5ファイルをpandas dataframeに

.h5ファイルに保存されているデータセットをダウンロードしました。特定の列のみを保持し、その列のデータを操作できるようにする必要があります。

これを行うために、pandasデータフレームにロードしようとしました。使用しようとしました:

_pd.read_hdf(path)
_

しかし、私は得ます:_No dataset in HDF5 file._

SO( HDF5ファイルをpandas条件付きDataFrame に読み込む)==)で回答を見つけましたが、条件は必要ありません。答えはファイルの書き込み方法に関する条件を追加しますが、私はファイルの作成者ではないため、それについては何もできません。

私もh5pyを使ってみました:

_df = h5py.File(path)
_

しかし、これは簡単に操作することはできず、列をそこから取り出せないようです(df.keys()を使用する列の名前のみ)。これを行う方法についてのアイデアはありますか?

11
Graham Slick

Pandas HDFサポートでは、HDFファイルを非常に具体的にフォーマットする必要があります。詳細は https://stackoverflow.com/a/33644128/41280 を参照してください。

5
drj

それらをPandasに読み込む最も簡単な方法は、h5py、次にnp.array、次にDataFrameに変換することです。次のようになります。

df = pd.DataFrame(np.array(h5py.File(path)['variable_1']))
2
Ivan Mitevski