我有一个包含数千万行的数据集。此数据上的几列代表分类特征。这些功能的每个级别都由一个字母数字字符串表示,例如“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() 尝试了字典,但它变得非常慢。解决这个问题的快速方法是什么?