通过子串
连接熊猫数据帧匹配
原文:https://www.geesforgeks.org/join-pandas-data frames-按子字符串匹配/
先决条件:T2】熊猫
在本文中,我们将学习如何使用 python 连接两个通过子字符串匹配的数据框。
使用的功能:
接近
按照以下步骤连接由子字符串匹配的两个数据帧。
- 创建两个数据帧。
- 使用笛卡尔乘积连接两个数据帧
- 在所有数据框中加入包含相等值的重复列
- 加入新的专栏
- 最后,删除每个数据框中添加的列。
- 然后,我们需要向数据框中添加一个新列。为此,我们将使用“lambda”和“find”函数,其中输出大于零。
- 现在,我们打印由子字符串匹配的连接数据帧。
下面是实现。
蟒蛇 3
import pandas as pd
dataFrame1 = pd.DataFrame([['PQR', 'B1'], ['QRS', 'B2'], ['RDE', 'B3']],
columns=['work_name', 'tag_name'])
dataFrame2 = pd.DataFrame([['RR', 'T1'], ['QR', 'T2'], ['HG', 'T3'],
['PQ', 'T4']],
columns=['sub_work_name', 'extra_tag_value'])
dataFrame1['join'] = 1
dataFrame2['join'] = 1
dataFrameFull = dataFrame1.merge(
dataFrame2, on='join').drop('join', axis=1)
dataFrame2.drop('join', axis=1, inplace=True)
dataFrameFull['match'] = dataFrameFull.apply(
lambda x: x.work_name.find(x.sub_work_name), axis=1).ge(0)
print(dataFrameFull[dataFrameFull['match']])
输出: