我有两个数据帧:
df1=
A
0 Black Prada zebra leather Large
1 green Gucci striped Canvas small
2 blue Prada Monogram calf leather XL
df2=
color pattern material size
0 black zebra leather small
1 green striped canvas xl
2 yellow checkered calf leather medium
3 orange monogram
4 white plain
5 pinstripe
我想把df2中的列与df1(控制非均匀大小写和空格)进行比较,如果有匹配项,将匹配项放入df1中的新列中,并从a中删除它。它应该是完全匹配的,这样“小牛皮革”就不会错误地与“leather”匹配,所以结果只剩下不匹配的子字符串答:
^{pr2}$我尝试过使用for循环,但我的数据集相当大,我觉得这并没有充分利用pandas。我也尝试过contains和isin,但没有成功。是唯一可使用的解决方案。提取df2列并将其转换为正则表达式?谢谢!在
更新
{{cdm>{1}你可能想从下面的列中找到。在
在这里,它检查
search
字符串中与df2
列中的单词匹配的最大百分比。如果它满足某个要求的阈值,则将其删除。在我已经测试过了,它正在工作,但是您可能需要使用一些正则表达式匹配。在
相关问题 更多 >
编程相关推荐