python-3.x - 将语料库中的名称部分匹配到 Pandas 数据框中另一列中的名称
问题描述
我有一个这样的数据框
Name Corpus
0 James Bond Junior Bristleback Agent James Bond went missing
1 Batman Bin Superman Superman saves the day again
2 Thor S/O Odin Loki was last seen in March 2020
我希望得到这个输出。
Name Corpus Value
0 James Bond Junior Bristleback Agent James Bond went missing True
1 Batman Bin Superman Superman saves the day again True
2 Thor S/O Odin Loki was last seen in March 2020 False
我以前尝试过正则表达式,但似乎无法获得所需的输出。反正有没有用正则表达式或其他一些库/包来实现这一点?
解决方案
不确定这是否完全符合您的需求。它本质上是将每个句子转换为一组单词,并检查是否有任何重叠:
df.Name.str.split().apply(set) & df.Corpus.str.split().apply(set)
输出:
0 True
1 True
2 False
dtype: bool
推荐阅读
- java - BigQuery 流插入错误 - 在数组之外添加重复记录
- java - 带抽屉布局的底部导航 | onBackPressed 在片段中
- excel - 将列表中的多个图像合并为 PDF
- python - 如何在 python 中以特定采样率输出 1 位音频?
- wordpress - add_rewrite_rule 在父主题中工作但不在子主题中
- mongodb - 获取特定类型的所有书籍
- adobe - AEM 新组件无法在组件列表中使用
- c - 我的代码总是在我的名字旁边显示一个笑脸
- excel - 在一张纸上合并两个 Private Sub WorkSheet_Change
- python - sns.heatmap y 轴未被覆盖