AttributeError: 'liste' de l'objet n'a pas d'attribut "copier"

J'ai l'extrait de code suivant

classifier = NaiveBayesClassifier.train(train_data)
#classifier.show_most_informative_features(n=20)
results = classifier.classify(test_data)

et l'erreur affiche dans la ligne suivante

results = classifier.classify(test_data)

erreur:

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'

Je pense que de l'extension de la liste de classe de base en python et ajouter la fonction de copie
mais je ne suis pas expert en python et je ne sais pas comment résoudre ce problème.

  • Consultez la documentation des fonctions que vous utilisez et vérifiez que vous êtes de passage droit types d'argument.
  • Le plus probable, train_data doit être un dictionnaire et non sur une liste.
  • c'est la source de classer les nltk.org/_modules/nltk/classify/naivebayes.html
  • Comment avez-vous produire test_data? C'est un objet de la liste, mais la NaiveBayesClassifier.classify() méthode attend un autre type tout à fait.
InformationsquelleAutor Amr Ragab | 2016-05-05