df = df.groupby(df.index).sum()
パンダ:df.groupby()は大きなデータセットでは遅すぎます。任意の代替方法?
私は380万行(単一列)のデータフレームを持っており、インデックスごとにグループ化しようとしています。しかし、計算を終わらせることは永遠に必要です。非常に大きなデータセットを扱う代替手段はありますか?前もって感謝します!!!!
私はPythonで書いています。
データは以下のようになります。 インデックスは顧客IDです。私はqty_liter
をIndex
でグループ化したいと思います。
df = df.groupby(df.index).sum()
しかし、このコード行はtoooo多くの時間がかかっている.....
このDFに関する情報は以下の通りです:
df.info()
<class 'pandas.core.frame.DataFrame'> Index: 3842595 entries, -2147153165 to \N Data columns (total 1 columns): qty_liter object dtypes: object(1) memory usage: 58.6+ MB
'df.info()'を表示できますか? – chrisb
インデックスを最初の列として保存しておけば、端末のこの1つのライナーは 'awk 'BEGIN {FS = OFS ="、 "} {a [$ 1] + = $ 2} END {for(i a)print i、a [i]} '' –
あなたはいくつの固有のグループを持っていますか? 380万のユニークなインデックスがあっても、1秒未満で合計を計算します(私は浮動小数点数で試しました)。 – ayhan