37

我是一名文学研究生,我一直在阅读 O'Reilly 在自然语言处理方面的书 (nltk.org/book)。它看起来非常有用。我已经玩过第 1 章中的所有示例文本和示例任务,比如索引。我现在知道白鲸用了多少次“鲸鱼”这个词。问题是,我无法弄清楚如何对我自己的一篇文章进行这些计算。我找到了有关如何创建自己的语料库的信息(O'Reilly 书的第 2 章),但我不认为这正是我想要做的。换句话说,我希望能够做到

import nltk 
text1.concordance('yellow')

并获取在我的文本中使用“黄色”一词的地方。目前我可以用示例文本做到这一点,但不是我自己的。

我对 python 和编程非常陌生,所以这些东西非常令人兴奋,但也非常令人困惑。

4

3 回答 3

73

自己找到了答案。这很尴尬。或者很棒。

从Ch。3:

f=open('my-file.txt','rU')
raw=f.read()
tokens = nltk.word_tokenize(raw)
text = nltk.Text(tokens)

行得通。

于 2012-05-06T00:22:14.393 回答
14

对于多个文件的结构化导入:

from nltk.corpus import PlaintextCorpusReader

# RegEx or list of file names
files = ".*\.txt"

corpus0 = PlaintextCorpusReader("/path/", files)
corpus  = nltk.Text(corpus0.words())

参见:NLTK 3 书/第 1.9 节

于 2015-03-05T14:17:44.700 回答
0

如果您的文本文件是 utf8 格式,请尝试以下变体:

f=open('my-file.txt','r',encoding='utf8')
raw=f.read()
tokens = nltk.word_tokenize(raw)
text = nltk.Text(tokens)
于 2020-09-07T09:35:17.063 回答