云主机测评网云主机测评网云主机测评网

云主机测评网
www.yunzhuji.net

pandas 多条件模糊匹配两个表

在Pandas中,我们可以使用merge()函数进行多条件模糊匹配,假设我们有两个表df1和df2,我们想要根据某些列的值进行模糊匹配。

(图片来源网络,侵删)

步骤如下:

1、我们需要导入pandas库。

import pandas as pd

2、我们创建两个数据框df1和df2。

df1 = pd.DataFrame({
    'A': ['foo', 'bar', 'baz', 'qux'],
    'B': ['one', 'one', 'two', 'three'],
    'C': ['small', 'large', 'large', 'small'],
    'D': [1, 2, 2, 3],
    'E': [2, 4, 5, 5]
})
df2 = pd.DataFrame({
    'A': ['foo', 'bar', 'baz', 'qux'],
    'B': ['one', 'one', 'two', 'four'],
    'C': ['small', 'large', 'large', 'small'],
    'F': [10, 20, 30, 40],
    'G': [50, 60, 70, 80]
})

3、接下来,我们可以使用merge()函数进行多条件模糊匹配,在这个例子中,我们将根据列’A’、’B’和’C’的值进行匹配。

result = pd.merge(df1, df2, on=['A', 'B', 'C'])

这将返回一个新的数据框,其中包含df1和df2中满足条件的行。

注意:merge()函数默认执行的是内连接(inner join),这意味着只有当两个表中的行在指定的列上都有匹配时,才会出现在结果中,如果你想执行其他类型的连接(如左连接、右连接或全连接),你可以传递相应的参数给merge()函数。pd.merge(df1, df2, on=['A', 'B', 'C'], how='outer')将执行全连接。

打赏
版权声明:主机测评不销售、不代购、不提供任何支持,仅分享信息/测评(有时效性),自行辨别,请遵纪守法文明上网。
文章名称:《pandas 多条件模糊匹配两个表》
文章链接:https://www.yunzhuji.net/jishujiaocheng/44928.html

评论

  • 验证码