我有一个数据集,包括 user ID
、item ID
(都是字符串)和这样的评分:
A12VH45Q3H5R5I B000NWJTKW 5.0
A3J8AQWNNI3WSN B000NWJTKW 4.0
A1XOBWIL4MILVM B000NWJTKW 1.0
我想将 ID
更改为整数,例如:
1 1 5.0
2 1 4.0
3 1 1.0
我尝试了一种传统的方法,创建一个大字典并用整数标记每个字符串 ID。但这花费了非常长的时间。那么你能告诉我如何更快地完成它吗?提前致谢。
最佳答案
您可以申请
factorize
:
In [244]:
df[[0,1]] = df[[0,1]].apply(lambda x: pd.factorize(x)[0] + 1)
df
Out[244]:
0 1 2
0 1 1 5
1 2 1 4
2 3 1 1
关于python - 如何使用 pandas 快速将数据框中的字符串更改为整数 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35366924/