4

次のパンダデータフレームがあります。

import pandas as pd
df = pd.read_csv(filename.csv)

HDFStoreこれで、オブジェクトをファイルに書き込むために使用できdfます (キーと値のペアを Python 辞書に追加するように)。

store = HDFStore('store.h5')
store['df'] = df

http://pandas.pydata.org/pandas-docs/stable/io.html

内容を見ると、このオブジェクトはframe.

store 

出力

<class 'pandas.io.pytables.HDFStore'>
File path: store.h5
/df            frame        (shape->[552,23252])

ただし、インデックスを使用するには、これをtableオブジェクトとして保存する必要があります。

私のアプローチは、HDFStore.put()ieを試すことでした

HDFStore.put(key="store.h", value=df, format=Table)

ただし、これは次のエラーで失敗します。

TypeError: put() missing 1 required positional argument: 'self'

Pandas Dataframes を PyTables テーブルとして保存するにはどうすればよいですか?

4

2 に答える 2

5

共通部分 - 既存の HDFStore ファイルを作成または開きます。

store = pd.HDFStore('store.h5')

すべての列にインデックスを付けたい場合は、これを試してください。

store.append('key_name', df, data_columns=True)

または、列のサブセットのみにインデックスを付けたい場合は、次のようにします。

store.append('key_name', df, data_columns=['colA','colC','colN'])

PSHDFStore.append()はデフォルトで DF をtable形式で保存します

于 2016-07-19T14:04:03.023 に答える