您可以使用pandas库中的str.contains()方法来比较两列,并仅保留匹配的单词字符串。下面是一个包含代码示例的解决方法:
import pandas as pd
# 创建一个示例DataFrame
data = {'col1': ['apple', 'banana', 'orange', 'grape'],
'col2': ['apple', 'mango', 'kiwi', 'grape']}
df = pd.DataFrame(data)
# 使用str.contains()方法比较两列,并仅保留匹配的单词字符串
df['col3'] = df['col1'].str.contains('|'.join(df['col2']), case=False)
# 打印结果
print(df)
输出结果为:
col1 col2 col3
0 apple apple True
1 banana mango False
2 orange kiwi False
3 grape grape True
在这个例子中,我们首先创建了一个包含两列(col1和col2)的DataFrame。然后,我们使用str.contains()方法将两列进行比较,并将结果存储在新的列col3中。str.contains()方法接受一个正则表达式模式作为参数,我们使用join()方法将col2中的所有单词字符串连接成一个模式。最后,我们使用case=False参数来忽略大小写,这样就可以匹配不区分大小写的字符串了。
上一篇:比较两列具有不同数据类型的值
下一篇:比较两列日期值