我有一个包含500 000行和2列的数据集。两列中都有电子邮件。
1行将始终有两封电子邮件,并且第一列中的电子邮件与第二列中的电子邮件“链接”。
现在,我有一个单独的数据集,该数据集将每封电子邮件与一个ID链接起来(分别),大约为ID分配了30000个电子邮件。
我正在尝试找到一种工具/解决方案,该工具/解决方案将允许为数据集中的每个电子邮件(具有两列,总共500 000个条目)分配一个ID,该ID在第二个文件中可用,并带有逻辑该ID是一个标签,应该分配给每封电子邮件。
也许有人知道我可以使用的一些合并策略?
答案 0 :(得分:0)
如果每封电子邮件都有唯一的ID,则需要分步进行以下汇总: 假设: -数据集1:具有2个列的500,00行包含电子邮件:email1,email2 -数据集2:30,000行,每行2个列:ID和电子邮件
dataset1
分为两个:dataset1.1
和一个单独的列:email1
和dataset1.2
和一个单独的列:email2
。dataset1.1
与dataset2
左连接:产生2个列email1
和ID1
dataset1.2
与dataset2
左连接:产生2个列email2
和ID2
dataset1.1
和dataset1.2
:import pandas as pd # after left join 1st col with IDs dataset1_1 = pd.DataFrame([["lulu@gmail.com", "31"], ["Dudu@gmail.com", "26"]], columns=['email', 'id']) print(dataset1_1) # after left join 2nd col with IDs dataset1_2 = pd.DataFrame([["lulu@xyz.com", "32"], ["Dudu@xyz.com", "27"]], columns=['email', 'id']) print(dataset1_2) # now merge both pd.concat([dataset1_1, dataset1_2], ignore_index=True)
结果如下:
希望这会有所帮助!