SpaCy:你如何检查两个特定实体是否出现在一个句子中?
SpaCy: How do you check if two specific entities occur in a sentence?
我需要从一个句子列表(字符串)中提取所有包含两个特定实体的句子,并将它们存储在一个新列表中。我尝试使用的代码看起来像这样,但不幸的是它不起作用。我正在使用 Python 和 SpaCy。
sents_required = []
for s in sentences:
if token.ent_type_=='SPECIES' in s and token.ent_type_=='KEYWORD' in s:
sents_required.append(s)
非常感谢您的帮助。
您声明条件的方式是 SQL-like,但这在 Python 中不起作用 - 您需要自己遍历列表并访问数据。有很多方法可以做到这一点,但这里有一个。
for s in sentences:
etypes = [tok.ent_type_ for tok in s]
if "SPECIES" in etypes and "KEYWORD" in etypes:
sents_required.append(s)
这段代码对我有用。感谢您的帮助!
sents_required = []
for s in sentences:
token_types = [token.ent_type_ for token in s]
if ('SPECIES' in token_types) and ('KEYWORD' in token_types):
sents_required.append(s)
我需要从一个句子列表(字符串)中提取所有包含两个特定实体的句子,并将它们存储在一个新列表中。我尝试使用的代码看起来像这样,但不幸的是它不起作用。我正在使用 Python 和 SpaCy。
sents_required = []
for s in sentences:
if token.ent_type_=='SPECIES' in s and token.ent_type_=='KEYWORD' in s:
sents_required.append(s)
非常感谢您的帮助。
您声明条件的方式是 SQL-like,但这在 Python 中不起作用 - 您需要自己遍历列表并访问数据。有很多方法可以做到这一点,但这里有一个。
for s in sentences:
etypes = [tok.ent_type_ for tok in s]
if "SPECIES" in etypes and "KEYWORD" in etypes:
sents_required.append(s)
这段代码对我有用。感谢您的帮助!
sents_required = []
for s in sentences:
token_types = [token.ent_type_ for token in s]
if ('SPECIES' in token_types) and ('KEYWORD' in token_types):
sents_required.append(s)