我有两个数据帧:
df1
Code Number
0 ABC123 1
1 DEF456 2
2 GHI789 3
3 DEA456 4
df2
Code
0 ABD123
1 DEA458
2 GHI789
df1就像一个字典,我可以通过检查每个项目的代码,从中获得它们各自的编号。但是,也有未注册的代码,如果我发现了未注册的代码,我应该寻找最像它们的代码。因此,结果应该是:
ABD123=1(因为它与ABC123有1个不同的字符)
DEA456=4(因为它有1个与DEA456不同的字符,2个与DEF456不同,所以它选择了最接近的字符)
GHI789=3(因为它在df1处具有等效值)
我知道如何单独检查每个代码的差异,并保存不同字符的“长度”,但我不知道如何应用此代码,因为我不知道如何将df2中的每一行与df1中的所有行进行比较。有办法吗
这也应该起作用:
嵌套循环将起作用。如果您有一个名为
compare
的函数,它将如下所示使用Pandas或Numpy时,嵌套循环通常不理想,但它们确实有效。也许有更好的解决办法
DataFrame.iterrows()
相关问题 更多 >
编程相关推荐