2012-12-30 6 views
8

私はNLTKでスピーチタギングを使用しようとしていますし、このコマンドを使用していますNLTKのpos_tagの使用

>>> text = nltk.word_tokenize("And now for something completely different") 

>>> nltk.pos_tag(text) 

Traceback (most recent call last): 
File "<pyshell#4>", line 1, in <module> 
nltk.pos_tag(text) 
File "C:\Python27\lib\site-packages\nltk\tag\__init__.py", line 99, in pos_tag 
tagger = load(_POS_TAGGER) 
File "C:\Python27\lib\site-packages\nltk\data.py", line 605, in load 
resource_val = pickle.load(_open(resource_url)) 
File "C:\Python27\lib\site-packages\nltk\data.py", line 686, in _open 
return find(path).open() 
File "C:\Python27\lib\site-packages\nltk\data.py", line 467, in find 
raise LookupError(resource_not_found) 
LookupError: 
********************************************************************** 
Resource 'taggers/maxent_treebank_pos_tagger/english.pickle' not 
found. Please use the NLTK Downloader to obtain the resource: 

はしかし、私が示したエラーメッセージが表示されます:

engish.pickle not found. 

私は全体をダウンロードする必要がありコーパスとenglish.pickleファイルはmaxtent_treebank_pos_taggerにあります

これを動作させるにはどうすればよいですか?

+0

ようこそ。最高の答えを得るためにあなたの質問に可能な限り記述してください。 – simonmorley

答えて

6

あなたのPythonインストールはmaxentまたはtreemapに到達できません。

最初に、タガーが実際にそこにあるかどうか確認してください: コマンドラインからPythonを起動してください。

>>> import nltk

次に、あなたはmaxenttreebankの両方があるかどうかを確認するためにリストを

>>> dir (nltk)

ルックを使用して確認することができます。 >モデル]タブと[インストールとツリーマップタガーが示しかどうかを確認します - 簡単

>>> "maxent" in dir(nltk) 
>>> True 
>>> "Treebank in dir(nltk) 
>>> True 

使用nltk.download()を入力することであろう。 もう一度ダウンロードしてみてください。

NLTK Downloader, Models Tab

お役に立てば幸いです。

+0

thnks @ram私は私の問題を解決しました。私は、フォルダのタグを作成し、その中でmaxtent_treebank_posをコピーし、それは最終的に働く.. :) –

2

あなたはダウンローダのGUIを使用しない場合は、あなただけのpythonまたはipythonシェルで次のコマンドを使用することができます。

import nltk 
nltk.download('punkt') 
nltk.download('maxent_treebank_pos_tagger') 
関連する問題