我有以下代码片段
classifier = NaiveBayesClassifier.train(train_data)
#classifier.show_most_informative_features(n=20)
results = classifier.classify(test_data)
错误显示在下面一行
results = classifier.classify(test_data)
错误:
Traceback (most recent call last):
File "trial_trial.py", line 46, in <module>
results = classifier.classify(test_data)
File "c:\Users\Amr\Anaconda\lib\site-packages\nltk\classify\naivebayes.py", line 88, in classify
return self.prob_classify(featureset).max()
File "c:\Users\Amr\Anaconda\lib\site-packages\nltk\classify\naivebayes.py", line 94, in prob_classify
featureset = featureset.copy()
AttributeError: 'list' object has no attribute 'copy'
我想在Python中扩展基类列表并添加复制函数,但我不是Python专家,也不知道如何解决这个问题。
train_data
必须是一个 字典 而不是一个列表。 - Martijn Pieterstest_data
的?它是一个列表对象,但NaiveBayesClassifier.classify()
方法期望完全不同的类型。 - Martijn Pieters