pandas 根据一个文本行中的关键字保留另一个文本行中的记录会产生 Dataframe

igetnqfo  于 2022-12-21  发布在  其他
关注(0)|答案(1)|浏览(125)

下面的数据框有两个文本列:text(包含句子)和keyword(包含关键字列表,我希望使用这些关键字筛选text列x1c 0d1x
我正在尝试根据keyword列的条件过滤text。如果keyword列中的任何单词存在于text列中,则保留该行,否则删除该行。
输出 Dataframe 应如下所示。

我尝试在Pandas中使用str.contains()函数,这是不正确的,因为contains()函数正在查找regex/pattern。

df['text'].str.contains(df['keyword'].str)

我收到以下错误

TypeError: first argument must be string or compiled pattern
vwhgwdsa

vwhgwdsa1#

使用内置any函数(检查 * 关键字 * 列表中是否有任何一个出现在 * 文本 * 中):

df = df[df.apply(lambda x: any(k in x.text for k in x.keyword), axis=1)]

相关问题