首先将新语料库中的实际数据放入您的nltk_data/corpora/
目录中。然后你必须编辑__init__.py
文件nltk.corpus
。您可以通过执行以下操作找到此文件的路径:
import nltk
print(nltk.corpus.__file__)
在文本编辑器中打开此文件,您会看到大部分文件都在创建LazyCorpusLoader
对象并将它们分配给全局变量。
例如,一个部分可能如下所示:
....
verbnet = LazyCorpusLoader(
'verbnet', VerbnetCorpusReader, r'(?!\.).*\.xml')
webtext = LazyCorpusLoader(
'webtext', PlaintextCorpusReader, r'(?!README|\.).*\.txt', encoding='ISO-8859-2')
wordnet = LazyCorpusLoader(
'wordnet', WordNetCorpusReader,
LazyCorpusLoader('omw', CorpusReader, r'.*/wn-data-.*\.tab', encoding='utf8'))
....
为了添加一个新的语料库,您只需以与上述示例相同的格式向该文件添加一个新行。因此,如果您有一个命名的语料库movie_reviews
并且保存了数据,nltk_data/corpora/movie_reviews
那么您需要添加如下一行:
movie_reviews = LazyCorpusLoader('movie_reviews', .... )
可以在此处的文档中找到 LazyCorpusLoader 的其他参数。
然后您只需保存此文件,然后您应该可以执行以下操作:
from nltk.corpus import movie_reviews