所以,我有一个带有客户名称的大型数据框。我使用电话号码和电子邮件相结合为每个客户创建一个唯一的ID密钥。但是,有时电子邮件中会出现拼写错误,因此会为同一个客户创建两个密钥。
像这样:
Key | Order #
555261andymiller@gmail.com 901345
555261andymller@gmail.com 901345
我正在考虑根据电话号码(部分字符串)组合所有密钥,然后将每个组中的所有密钥分配给每个组中的第一个密钥。我将如何在熊猫中做到这一点?我已经尝试迭代行,我也尝试了部分字符串的groupby方法,但我似乎无法使用此方法分配新值。
答案 0 :(得分:0)
如果您真的不在乎新ID是什么,您可以将字符串的第一个字符(代表电话号码)分组
例如:
df.groupby(df.Key.str[:6]).first()
这将产生一个数据框,其中索引是客户记录的第一个条目。这假设电话号码总是正确的,虽然听起来应该不是问题