我正在尝试从一组帖子中获取最常见的POS标签列表。 我写了以下内容:
text2=corpus
text4=nltk.word_tokenize(text2)
tags=nltk.pos_tag(text4)
for a,b in tags:
counter2={}
l=wordpunct_tokenize(b)
for i in l: counter2[i] = counter2.get (i,0)+1
list5=sorted([(freq,word) for word, freq in counter.items()], reverse=True)[:3]
print list5
假设的结果将是例如
NN, JJ, PRP...
然而我得到了这个废话:
[(539, ','), (476, '.'), (385, '?')]
中没有单一的语法标记。
虽然b看起来像:
CC
WP
PRP
VBD
NNP
NNP
PRP
VBD
VBG
TO
VB
PRP$
NN
有谁知道我做错了什么?
答案 0 :(得分:0)
我认为你帖子中的缩进搞砸了,但这就是我认为你要做的事情(打印前三部分):
text2=corpus
text4=nltk.word_tokenize(text2)
tags=nltk.pos_tag(text4)
counter2={}
for a,b in tags:
counter2[b] = counter2.get(b,0)+1
list5=sorted([(freq,word) for word, freq in counter2.items()], reverse=True)[:3]
print [word for freq,word in list5]
我认为你不想标记“b”。