2017-08-14 178 views
0

我已經安裝了spacy遵循python 2.7使用pip的網站上的說明,並下載了英文模型,也使用pip,但是當我運行一個簡單的測試代碼時,它返回一個空集作爲結果,當在線示例表明它應該識別該主題。我認爲spacy並沒有連接到模型,因此不會返回任何結果,但它不會給我帶來任何錯誤,並表明它已正確連接。Spacy返回空結果

from spacy.en import English 

nlp = English() 
sent = "I shot an elephant" 
doc = nlp(sent) 

sub_toks = [tok for tok in doc if (tok.dep_ == "nsubj")] 

print sub_toks 

這返回[],沒有錯誤或任何其他問題。我如何得到它實際返回結果?

+0

這將返回'[I]'我。確保你的輸入是unicode,而不是一個字符串,即'sent = u「我拍了一頭大象」 – gobrewers14

回答

0

我的問題是英文模型加載不正確。當我重新安裝了,我看到儘管命令提示符說:「成功鏈接」事實上,它上面的線是「您沒有足夠的權限來執行此操作」,我跑了它作爲一個管理者,它的工作

0

@Neil凱里,

嘗試安裝Spacy 1.9,它的穩定版本,我面臨着同樣的問題,我安裝Spacy 1.9及其工作形成我還是儘量運行此命令在外殼

PIP安裝-U spacy

python -m空格下載en

也可以鏈接你的包spacy喜歡這個

蟒蛇-m spacy鏈接[包名或路徑] [快捷鍵] [--force]