繁体   English   中英

基于 python 分配用户 ID 的有效方法

[英]Efficient way of assigning user IDs based in python

我正在尝试根据电子邮件分配用户 ID,我的数据如下所示:

email, date, status
user1@email.com, 28-05-2020, 1
user2@email.com, 28-05-2020, 5
user3@email.com, 29-05-2020, 2
user4@email.com, 30-05-2020, 1

单个用户 email 可以在 dataframe 中多次出现,我当然希望每次都用单个用户 ID 替换 email。 我目前的做法是:

users = all_data['email']
unique = all_data['email'].unique()
ids = [np.where(unique == user) for user in users]

这工作正常,但需要永远运行大量数据。 对于 50 条记录,它轻而易举地运行。 对于 500k 记录,我还没有看到它完成。 有没有办法可以更有效地做到这一点?

IIUC, Series.factorize

df['id'] = df['email'].factorize()[0]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM