2014-12-19 29 views
2

我使用NLTK3阿拉伯语文本分类的工作。我有以下错误,可以请你帮我找出错误使用NLTK3错误的文本分类?

"calssifier =NaiveBayesClassifier.train(train_set) 
    File "/usr/local/lib/python2.7/dist-packages/nltk/classify/naivebayes.py", line 194, in train 
    for fname, fval in featureset.items(): 
AttributeError: 'unicode' object has no attribute 'items'" 

感谢

回答

0

错误消息

'unicode' object has no attribute 'items'" 

意味着train_setunicode,当它应该是items方法的字典式 对象时。

要说更多将需要发布minimal example恶魔般的错误。

使用

classifier = nltk.NaiveBayesClassifier.train(train_set) 
+0

非常感谢!我在第六章跟着同样的例子,我得到了准确性1.0,这是不可能的。我有一个不同的用例,我有一套训练集作为评论,每个评论都有其方面。我想要构建一个能够确定测试评论方面的分类器。我将使用词性标记作为特征。我构建了特征函数,但我无法理解如何将特征放入分类器中? ,我注意到test_set也应该像train_set一样形成字典! –

+0

请举一个例子 –

1

train_set一个例子见chapter 6 of the NLTK book是一个字符串,当它应该是一个字典。

+0

你可以举一个例子 –

+1

OP已经设置了'train_set =“something”'而不是'train_set = {“items”:“something”}''。微不足道的错误。 – dmvianna