問題タブ [hdf]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 破損した PyTables HDF5 ファイルを開く
破損した HDF5 ファイルを開く際の助けを期待しています。PyTables
経由でアクセスしていますPandas
が、pd.read_hdf()
呼び出すと次のエラーが発生します。の内部の仕組みについては何も知りませんPyTables
。
ファイルに保存するプロセス(10秒ごとに追加)が重複したため、エラーが発生したと思われるため、2つの同一のプロセスが追加されました。これがデータの複製ではなくファイルの破損につながる理由はわかりませんが、2 つのエラーが一緒に発生したため、因果関係があると考えられます。
python - Python の大きなデータセット - PyTable HDF5 with Dataframe
abn hdf ファイルとして保存された非常に大きなファイルがあります。また、一意のIDでhdfファイルを検索したいPythonデータフレームにいくつかのデータがあります。
基本的にそれらに参加する簡単な方法はありますか? where 関数の例を見ましたが、多数の値を検索するのは簡単ではないようでした。
python - h5pyで外部のrawファイルをhdf5ファイルにリンク
私はバイナリ フラット ファイルを頻繁に使用しており、レガシー コードを使用するには現在の形式を維持する必要がありますが、属性とグループで HDF5 ファイルの機能の一部を使用できるようにしたいと考えています。HDF5ドキュメント 5.5.4で、外部データをリンクできることがわかります。HDF5 ファイルを作成し、h5py で外部リンクを追加する簡単な方法はありますか?
python - Pandas to_hdf は成功しますが、read_hdf は失敗します
Pandasto_hdf
は成功しますが、read_hdf
カスタム オブジェクトを列ヘッダーとして使用すると失敗します (他の情報を格納する必要があるため、カスタム オブジェクトを使用します)。
これを機能させる方法はありますか?それとも、これは単に Pandas のバグまたは PyTables のバグですか?
foo
以下の例では、最初に文字列の列ヘッダーを使用する DataFrame を作成し、すべてがto_hdf
/で正常に動作することを示しますが、列ヘッダーにカスタム クラスread_hdf
を使用するように foo を変更しても問題なく動作しますが、アサーション エラーが発生します。Col
to_hdf
read_hdf
更新:
したがって、Jeff は (a) 「これはサポートされていません」と (b) 「メタデータがある場合は属性に書き込む」と答えました。
(a) に関する質問 1: 私の列ヘッダー オブジェクトには、プロパティなどを返すメソッドがあります。たとえば、値を解析する必要がある列ヘッダー文字列 'x5y3z8' の代わりに、単に col_header.x ( 5) col_header.y (3) などを返します。これは、文字列を使用して情報を保存し、情報を取得するたびに解析する必要がなく、非常にオブジェクト指向で Pythonic です。現在の列ヘッダー オブジェクトを適切な方法で置き換えるにはどうすればよいですか (これもサポートされています)。
(ところで、「x5y3z8」を見て、階層インデックスが機能していると思うかもしれませんが、すべての列ヘッダーが「x#y#z#」であるとは限らないため、そうではありません。文字列の列「foo」と別の列があるかもしれません。 int の 'bar5baz7' と float の別の 'x5y3z8' です。列ヘッダーは統一されていません。)
(a) に関する質問 2: サポートされていないという場合、具体的に to_hdf/read_hdf がサポートされていないことについて話しているのですか、それとも Pandas が一般的にサポートしていないということですか? 欠けているのが HDF5 サポートだけである場合は、DataFrame をディスクに保存する別の方法に切り替えて、それを機能させることができますよね? 将来、そのことで何か問題が起こると予想していますか。たとえば、これは to_pickle/read_pickle で壊れますか? (性能は落ちますが、何かをあきらめなければなりませんよね?)
(b) に関する質問 3: 「メタデータがある場合は、それを属性に書き込む」とはどういう意味ですか。何の属性?簡単な例がとても役に立ちます。私はパンダにかなり慣れていません。ありがとう!
python - HDF5 からテーブルのインデックスを取得する最も効率的な方法
pandas Series/DataFrame テーブルを含む HDF5 ファイルがあります。HDF のキーの下に格納されているテーブルの (パンダ) インデックスを取得する必要がありますが、必ずしもテーブル全体ではありません。
インデックスを取得する 2 つの (事実上同じ) 方法を考えることができます。
ただし、〜 2000 行の pandas シリーズの場合、これには 0.6 秒かかります。
HDF でテーブルのインデックスのみを取得する方法はありますか?
python - hdf5 ファイルを 1 つのデータセットに結合
それぞれに単一のデータセットを持つ多数の hdf5 ファイルがあります。データがすべて同じボリュームにある 1 つのデータセットにそれらを結合したい (各ファイルは画像であり、1 つの大きなタイムラプス画像が必要です)。
データをnumpy配列として抽出して保存し、それを新しいh5ファイルに書き込もうとするPythonスクリプトを作成しました。ただし、結合されたデータは私が持っている 32 GB 以上の RAM を使用するため、このアプローチは機能しません。
コマンドラインツールのh5copyも使ってみました。
これは機能しますが、すべてのデータセットを連続させるのではなく、新しいファイル内に多くのデータセットが作成されます。