0

我对情绪分析很陌生。尝试使用 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'
4

2 回答 2

1

我猜你正在导入 sst 包 selenium-simple-test,这不是你要找的。

如果出现错误,请尝试 sst.discover()

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

您正在使用 selenium-simple-test 包

于 2020-03-03T16:41:34.823 回答
1

我认为您正在寻找https://github.com/JonathanRaiman/pytreebank,而不是https://pypi.org/project/sst/

在 python 方面,这个错误非常明显。但是,一旦您导入了正确的包,我不确定我是否看到了,train_reader但我可能是错的。

更新:我不完全确定你为什么会遇到没有属性 train_reader 的“sst”。如果您使用的是 conda,请确保您没有意外安装“sst”包。看起来“sst”指的是一个私人创建的模块,应该可以工作。

我让你的导入工作,但我所做的是我:

  1. 安装requirements.txt文件中指定的所有内容。
  2. import sst仍然给我一个错误,所以我安装了 nltk 和 sklearn 来解决这个问题。(仅供参考,我没有使用 conda。我只是将 pip 和 virtualenv 用于我自己的私有包设置。我跑了pip install nltkpip install sklearn
  3. 在这一点上,import sst为我工作。
于 2020-03-03T16:42:48.750 回答