如何在Python自然语言工具包中创建自己的语料库?

4 投票
3 回答
7246 浏览
提问于 2025-04-15 18:40

我最近在nltk中扩展了名字的数据库,现在想知道怎么把我手里的两个文件(male.txt和female.txt)变成一个数据库,这样我就可以用现有的nltk.corpus方法来访问它们。有没有人能给我一些建议?

非常感谢,
詹姆斯。

3 个回答

0

亚历克斯说得对,先从文档开始,找出哪个语料库读取器适合你的语料库。简单来说,就是给它你语料库文件的路径,然后创建一个实例。你会在文档中看到,内置的语料库其实就是一些特定语料库读取器类的实例。看看nltk.corpus这个包里的代码也会很有帮助。

1

我通过查看nltk.corpus的源代码,了解了语料库是怎么读取的,然后又看了看语料库的内容(这些内容通常在/home/[user]/nltk_data/corpora/names这个路径下,对于XP用户来说可能在“我的文档”里,而Win7用户则在用户文件夹里)。

语料库的结构和相关功能能帮助我们更好地理解如何使用NLTK中提供的各种语料库。

在我的情况下,我查看了nltk.corpus源代码中的names变量,并对WordListCorpusReader这个函数产生了兴趣,因为names语料库其实就是一个单词列表。

4

根据说明文件的说法,这个名字数据集并不属于公共领域——如果你对这个数据集做了任何修改,应该给作者发一封邮件(地址在那个文件里)。除了这个法律和礼貌的细节之外,你可以简单地用你自己的文件替换这两个文件,格式非常简单(每行一个名字,可以有注释[[会被忽略]],注释以'#'开头)。

如果你想安装一个全新的数据集,而不是仅仅修改现有的,可以参考这里的文档。

撰写回答