AttributeError: модуль sst не имеет атрибута train_reader

Я новичок в анализе сантиментов. При попытке использовать Stanford Sentiment Treebank(sst) произошла ошибка.

from nltk.tree import Tree
import os
import sst
trees = "C:\\Users\m\data\trees"
tree, score = next(sst.train_reader(trees))

[Выход]:

AttributeError                            Traceback (most recent call last)
<ipython-input-19-4101f90b0b16> in <module>()
----> 1 tree, score = next(sst.train_reader(trees))

AttributeError: module 'sst' has no attribute 'train_reader'

2 ответа

Решение

Я думаю, вы ищете https://github.com/JonathanRaiman/pytreebank, а не https://pypi.org/project/sst/.

На стороне Python эта ошибка довольно очевидна. Однако, как только вы импортируете нужный пакет, я не уверен, что виделtrain_reader но я мог ошибаться.

ОБНОВЛЕНИЕ: я не совсем уверен, почему вы сталкиваетесь с 'sst' без атрибута train_reader. Если вы используете conda, убедитесь, что вы случайно не установили пакет sst. Похоже, что "sst" относится к частному модулю, и он должен работать.

Ваш импорт работает, но я сделал следующее:

  1. Установил все, что указано в requirements.txt файл.
  2. import sstвсе еще выдавал ошибку, поэтому я установил nltk и sklearn, чтобы решить эту проблему. (к сведению, я не использую conda. я просто использую pip и virtualenv для своих личных настроек пакета. Я запустилpip install nltk а также pip install sklearn)
  3. На данном этапе, import sst работал у меня.

Я предполагаю, что вы импортируете sst-пакет selenium-simple-test, а это не то, что вы ищете.

Попробуйте sst.discover(), если вы получите ошибку

TypeError: discover() missing 4 required positional arguments: 'test_loader', 'package', 'dir_path', and 'names'

Вы используете пакет selenium-simple-test

Другие вопросы по тегам