我想合并两个数据帧df1和df2,以便比较两个值INFO 1和INFO 2.合并它们的键隐藏在名称列中.DF1是"干净的",因为它有一个名字列和一个姓氏列.然而,DF2是一个棘手的问题.只有一个名称列,可以用不同的方式给出名称.标准大小写是名字和姓氏,但如下图所示,它可以包含两个名字,用‘and’或‘&;’分隔,甚至可以是完全不同的名字,比如一所学校.
以下是代码中的虚拟数据:
data1 = [['Anna','Tessmann',10], ['Ben','Fachmann',20], ['John','Smith',10]]
df1 = pd.DataFrame(data1, columns=['FirstName','LastName','Info1'])
data2 = [['Ben Fachmann',30], ['School AAA',40], ['John and Melissa Smith',50], ['Bob & Anna Tessmann',20]]
df2= pd.DataFrame(data2, columns=['Name','Info2'])
有谁知道将这两者结合起来的有效方法吗?是否有可能在st上合并‘df2.名称包含df1.Lastname’?或者我正在try 解析df2.Name,我发现nameparser导入HumanName,但我认为它不能处理‘and’和‘&;’.
如果有什么不清楚的地方,我很抱歉.非常感谢您提前给予我们的帮助!