私は多くの統計作業を行い、Pythonをメイン言語として使用しています。ただし、使用するデータセットの一部は20 GBのメモリを使用できるため、メモリ内関数を使用して操作できます。 numpy、scipy、PyIMSLはほぼ不可能です。統計分析言語SASは、厳密にメモリ内処理ではなく、ハードディスクからのデータを操作できるという大きな利点があります。しかし、私はSAS(さまざまな理由で)で多くのコードを書く必要がないようにしたいので、Python(Python $ ===(より多くのハードウェアとメモリを購入することに加えて)。
completeデータセットを操作する必要があるため、map-reduceのようなアプローチは私の作業の多くに役立たないことを明確にする必要があります(たとえば、分位数の計算やロジスティック回帰モデルのフィッティング)。
最近私は h5py で遊び始めました、そしてそれがPythonがSASのように振る舞い、動作することを可能にするために私が見つけた最良のオプションだと思いますnumpy/scipy/matplotlibなどを活用しながら、ディスクからのデータ(hdf5ファイル経由)で。Pythonとh5pyを同様の設定で使用した経験がある人がいるかどうか聞きたいですこれまでSASが主流だった「ビッグデータ」設定でPythonを使用できた人はいますか?
編集:ハードウェア/メモリを追加購入することは確かに役立ちますが、ITの観点からは、Python Pythonを販売するのは難しいです$ ===(またはR、MATLABなど)はデータをメモリに保持する必要があります。SASディスクベースの分析は遅くなる可能性がありますが、自信を持ってできるため、ここでは引き続き強力なセールスポイントがあります。膨大なデータセットを処理するので、Stackoverflow-ersが、主力のビッグデータ分析言語としてPythonを使用することで認識されるリスクを軽減する方法を理解するのに役立つことを願っています。
Pythonをh5py、numpy/scipy、boost :: pythonと組み合わせて使用して、データ分析を行います。通常のデータセットのサイズは最大数百GBです。
HDF5の利点:
HDF5の落とし穴:
これは長いコメントであり、h5pyに関する実際の質問に対する回答ではありません。統計にはPythonを使用せず、比較的小さなデータセットを処理する傾向がありますが、 のCRANタスクビューを確認する価値があるかもしれません。 Rでのハイパフォーマンスコンピューティング 、特に「大容量メモリとメモリ不足データ」セクション。
3つの理由:
繰り返しになりますが、これは私のリーグから完全に外れていることを強調します。あなたがすでにこれらすべてを知っている可能性は確かにあります。しかし、おそらくこれはあなたや同じ問題に取り組んでいる誰かにとって役立つでしょう。