NotImplementedError: Use label() to access a node label.

在用nltk做词性标注时,出现了这样的错误,后来查了下,可能是因为版本的问题。代码如下:

import nltk
# 一 NLTK进行分词
#将文本拆分成句子列表
text='PythonTip.com is a very good website. we can learn a lot from it.'
sens=nltk.sent_tokenize(text)
print(sens)

#对句子进行分词,nltk的分词是句子级的,因此要先分句,再逐句分词
words=[]
for sent in sens:
    words.append(nltk.word_tokenize(sent))
print(words)

# 二 NLTK进行词性标注
#tokens是句子分词后的结果,同样是句子级的标注
tags=[]
for tokens in words:
    tags.append(nltk.pos_tag(tokens))
print(tags)


# 三 NLTK进行命名实体识别
text="Xi is the chairman of China in the year 2013. "
tokens=nltk.word_tokenize(text)
tags=nltk.pos_tag(tokens)
print(tags)
#NER 需要利用词性标注的结果
ners=nltk.ne_chunk(tags)
print('%s --- %s'% (str(ners),str(ners.node)))

在此,需将最后一句代码改成如下所示:

print('%s --- %s'% (str(ners),str(ners.label())))

猜你喜欢

转载自blog.csdn.net/liushao123456789/article/details/79473514
今日推荐