2017-03-13 3 views
0

Ich versuche, den Stanford POS Tagger in Python zu verwenden. Python NLTK pos_tag not returning the correct part-of-speech tagSo importieren Sie Stanford POS Tagger

gibt es die folgenden Fehler::

home = 'U:/ManWin/My Documents/Research Project' 
from nltk.tag.stanford import StanfordPOSTagger as POS_Tag 
_path_to_model = home + '/stanford-postagger/models/english-bidirectional-distsim.tagger' 
_path_to_jar = home + '/stanford-postagger/stanford-postagger.jar' 
st = POS_Tag(path_to_model=_path_to_model, path_to_jar=_path_to_jar) 

Haben Sie die letzte Zeile aus der Antwort hier kopiert

Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "U:\Python35\site-packages\nltk\tag\stanford.py", line 136, in __init__ 
    super(StanfordPOSTagger, self).__init__(*args, **kwargs) 
TypeError: __init__() got an unexpected keyword argument 'path_to_model' 

Was muss ich ändern?

+0

Sieht aus wie Sie die falsche Klasse instanziieren hier. Laut der Antwort auf die Frage, auf die Sie verlinken, sieht die Importzeile wie folgt aus: 'from nltk.tag.stanford import POSTagger'. Sie importieren stattdessen etwas namens "StanordPOSTagger". –

Antwort

1

Es scheint, dass der Name des Parameters path_to_model in model_filename geändert wurde. So ersetzen Sie die letzte Zeile mit:

st = POS_Tag(model_filename=_path_to_model, path_to_jar=_path_to_jar)

Oder da die Parameter in Ordnung sind, nur schreiben:

st = POS_Tag(_path_to_model, _path_to_jar)

+0

Perfekt - danke! – user3058703

Verwandte Themen