我有一个熊猫数据框,我正在尝试将给定列中由字符串表示的值更改为整数。例如:
df = index fruit quantity price
0 apple 5 0.99
1 apple 2 0.99
2 orange 4 0.89
4 banana 1 1.64
...
10023 kiwi 10 0.92
我想看看:
df = index fruit quantity price
0 1 5 0.99
1 1 2 0.99
2 2 4 0.89
4 3 1 1.64
...
10023 5 10 0.92
我可以用
df["fruit"] = df["fruit"].map({"apple": 1, "orange": 2,...})
如果我有一个小列表要更改,这会起作用,但我正在查看一个包含 500 多个不同标签的列。有什么方法可以将它从 string
更改为 int
吗?
原文由 Lukasz 发布,翻译遵循 CC BY-SA 4.0 许可协议
使用
factorize
然后转换为categorical
如有必要:此外,如果需要从
1
计算: