0

数千万行のデータセットがあります。このデータのいくつかの列は、カテゴリの特徴を表しています。これらの機能の各レベルは、「b009d929」のような英数字の文字列で表されます。

C1        C2        C3        C4        C5        C6        C7      
68fd1e64  80e26c9b  fb936136  7b4723c4  25c83c98  7e0ccccf  de7995b8 ...  
68fd1e64  f0cf0024  6f67f7e5  41274cd7  25c83c98  fe6b92e5  922afcc0

メモリを節約するために、Python を使用して各レベルを数値にマップできるようにしたいと考えています。そのため、機能 C1 のレベルは 1 から C1_n までの数字に置き換えられ、C2 のレベルは 1 から C2_n までの数字に置き換えられます... 各機能には、10 未満から 10k+ までの範囲の異なる数のレベルがあります。Pandas の .replace() で辞書を試しましたが、非常に遅くなります。この問題にアプローチするための迅速な方法は何ですか?

4

1 に答える 1