我有2个数据框:
DF A:
和DF B:
我需要检查DFA ['item']中的每一行是否包含DFB ['original']中的某些值,如果包含,则在DFA ['my']中添加新列对应于DFB ['my']中的值。
这就是我需要的结果:
我努力将DFB ['original']转换为列表,然后使用正则表达式,但是这样一来,我将无法从“ my”列中获得匹配结果。
答案 0 :(得分:0)
好的,也许不是最好的解决方案,但是它似乎正在起作用。 我做了笛卡尔联接,然后检查了包含所需数据的记录
dfa['join'] = 1
dfb['join'] = 1
dfFull = dfa.merge(dfb, on='join').drop('join' , axis=1)
dfFull['match'] = dfFull.apply(lambda x: x.original in x.item, axis = 1)
dfFull[dfFull['match']]