创建NER标签列的属性错误



我试图在数据框架中创建显示来自spaCy模型的实体和标签的列,到目前为止,通过输入以下代码,我可以生成实体列:

df['new_col'] = df['Combined'].apply(lambda x: list(ner_model(x).ents))

然而,如果我对标签做同样的尝试:

#df['new_col1'] = df['Combined'].apply(lambda x: list(nlp(x).label_))

我得到'AttributeError: ' space .tokens.doc. doc '对象没有属性'label_ "

我怀疑我可能不得不迭代单个令牌,但我不确定如何做到这一点?

你需要做这样的事情

df['new_col1'] = df['Combined'].apply(lambda x: [ent.label_ for ent in nlp(x).ents])

nlp(x)的输出是一个Doc对象,并且Doc对象上没有label属性(正如您得到的错误中明确指出的那样)。您需要Doc对象上实体的标签,这就是为什么您需要迭代nlp(x).ents并获得每个实体的label_

相关内容

  • 没有找到相关文章

最新更新