1
が、これはメモリにDASKのデータフレームのロードサブセットの有効な方法です。より小さなパンダにデータフレーム化する。また、私はdask dataframesがiloc
属性を持っているとは思わない。 私はバージョン0.15.2を使用していますサブセットDASKのデータフレーム
ユースケースの点では、これはデータのバッチを深い学習(たとえばケラス)に読み込む方法になります。
が、これはメモリにDASKのデータフレームのロードサブセットの有効な方法です。より小さなパンダにデータフレーム化する。また、私はdask dataframesがiloc
属性を持っているとは思わない。 私はバージョン0.15.2を使用していますサブセットDASKのデータフレーム
ユースケースの点では、これはデータのバッチを深い学習(たとえばケラス)に読み込む方法になります。
データセットによく知られた部門がある場合、これは機能するかもしれませんが、代わりに1度に1つのパーティションを計算することをお勧めします。
for part in df.to_delayed():
subset = part.compute()
あなたは大体それが各パーティション内の行の固定数を保証するものではありませんが、その保証は可能性があるため、これは、まったく同じではありません事前に
for part in df.repartition(npartitions=100).to_delayed():
subset = part.compute()
を再分割することによってサイズを制御することができますデータがどのように取得されるかに応じて非常に高価になります。
しかし、後者の方法では、データセット全体を正しく実行することができますか?私はこれを前もって行ったことにも言及すべきである: 'df = dd.from_pandas(df、16)'。それは衝突を引き起こすのでしょうか、あるいは別のパーティションをするだけでしょうか? –
はい、これにはデータセット全体が含まれます。安全に再分割することができます。あるいは、異なる数のパーティションでfrom_pandasを呼び出すこともできます。いずれもここでうまくいくはずです。 – MRocklin