我一直在做一些工作,白鯨,我無意中發現了答案進口只是一個特定文本前些天的問題:
>>>import nltk.corpus
>>>from nltk.text import Text
>>>moby = Text(nltk.corpus.gutenberg.words('melville-moby_dick.txt'))
因此,你真正需要的是fileid以便將該文件的文本分配給新的Text對象。但要小心,因爲gutenberg.words目錄中只有「文學」來源。
無論如何,對於找到文件ID爲古騰堡,進口nltk.corpus後上方的幫助下,你可以使用下面的命令:
>>> nltk.corpus.gutenberg.fileids()
['austen-emma.txt', 'austen-persuasion.txt', 'austen-sense.txt', 'bible-kjv.txt', 'blake-poems.txt', 'bryant-stories.txt', 'burgess-busterbrown.txt', 'carroll-alice.txt', 'chesterton-ball.txt', 'chesterton-brown.txt', 'chesterton-thursday.txt', 'edgeworth-parents.txt', 'melville-moby_dick.txt', 'milton-paradise.txt', 'shakespeare-caesar.txt', 'shakespeare-hamlet.txt', 'shakespeare-macbeth.txt', 'whitman-leaves.txt']
這仍然沒有回答這個問題爲您的特定語料庫中,然而,就職地址。對於這個答案,我發現這本麻省理工學院的論文:http://web.mit.edu/6.863/www/fall2012/nltk/ch2-3.pdf
(我建議任何人開始使用nltk文本,因爲它談論抓取各種文本數據進行分析)。這個問題的答案得到的就職演說中談到fileids第6頁(編輯了一下):
>>> nltk.corpus.inaugural.fileids()
['1789-Washington.txt', '1793-Washington.txt', '1797-Adams.txt', '1801-Jefferson.txt', '1805-Jefferson.txt', '1809-Madison.txt', '1813-Madison.txt', '1817-Monroe.txt', '1821-Monroe.txt', '1825-Adams.txt', '1829-Jackson.txt', '1833-Jackson.txt', '1837-VanBuren.txt', '1841-Harrison.txt', '1845-Polk.txt', '1849-Taylor.txt', '1853-Pierce.txt', '1857-Buchanan.txt', '1861-Lincoln.txt', '1865-Lincoln.txt', '1869-Grant.txt', '1873-Grant.txt', '1877-Hayes.txt', '1881-Garfield.txt', '1885-Cleveland.txt', '1889-Harrison.txt', '1893-Cleveland.txt', '1897-McKinley.txt', '1901-McKinley.txt', '1905-Roosevelt.txt', '1909-Taft.txt', '1913-Wilson.txt', '1917-Wilson.txt', '1921-Harding.txt', '1925-Coolidge.txt', '1929-Hoover.txt', '1933-Roosevelt.txt', '1937-Roosevelt.txt', '1941-Roosevelt.txt', '1945-Roosevelt.txt', '1949-Truman.txt', '1953-Eisenhower.txt', '1957-Eisenhower.txt', '1961-Kennedy.txt', '1965-Johnson.txt', '1969-Nixon.txt', '1973-Nixon.txt', '1977-Carter.txt', '1981-Reagan.txt', '1985-Reagan.txt', '1989-Bush.txt', '1993-Clinton.txt', '1997-Clinton.txt', '2001-Bush.txt', '2005-Bush.txt', '2009-Obama.txt']
因此,你應該能夠導入特定的就職演說的文本(假設你「從nltk.text導入文本」做上面),或者你可以使用上面導入的「就職」標識符與他們一起工作。例如,這個工程:
>>>address1 = Text(nltk.corpus.inaugural.words('2009-Obama.txt'))
事實上,你可以通過調用inaugural.words不帶任何參數從this page把所有的就職演說爲一個文件,如下面的例子:
>>>len(nltk.corpus.inaugural.words())
OR
地址=文本(nltk.corpus.inaugural.words())
我記得當試圖回答這個問題我自己,所以也許這個信息,如果來晚了,將有助於有人的地方閱讀此線程在一個月前。
(這是我堆棧溢出的第一個貢獻。我一直在讀了幾個月,從來沒有任何有用的補充,直到如今。只想通常說「感謝大家所有幫助。」)
可能的答案#2:當你導入nltk時,它是否已經包含text1 - text9?我沒有使用過nltk,但我曾經和寫過它的人一起工作。 – Crisfole
據我所知,導入NLTK不會導入書籍。 –
關於#2,查看了代碼(http://code.google.com/p/nltk/source/browse/trunk/nltk/nltk/book.py),導入nltk.book只是加載每個文本 – Spaceghost