词典或者词典资源的意思是一个 词或短语 以及一些相关信息的集合。例如:词性和词意定义等相关信息。词典资源附属于文本,通常在文本的帮助下创建和丰富。
词汇列表语料库
nltk.corpus.words
仅仅包含词汇列表的语料库,可以用来寻找文本语料中不常见的或者拼写错误的词汇
import nltk
def unusual_words(text):
text_vocab = set([w.lower() for w in text if w.isalpha()])
english_vocab = set([w.lower() for w in nltk.corpus.words.words()])
unusual = text_vocab.difference(english_vocab)#集合的差集
return sorted(unusual)
print unusual_words(nltk.corpus.gutenberg.words('austen-sense.txt'))
输出:[u’abbeyland’, u’abhorred’, u’abilities’, u’abounded’, u’abridgement’, u’abused’, u’abuses’, …u’years’, u’yielded’, u’youngest’]
停用词语料库
print(nltk.corpus.stopwords.words('english'))#英语停用词
输出:[‘i’, ‘me’, ‘my’, ‘myself’, ‘we’, ‘our’, ‘ours’, …wouldn’t"]
print(nltk.corpus.stopwords.words('French'))#法语停用词
名字语料库
nltk.corpus.names
包括8000个按性别分类的名字。男女的名字存储在单独的文件
names = nltk.corpus.names
cfd = nltk.ConditionalFreqDist(
(fileid, name[-1])
for fileid in names.fileids()
for name in names.words(fileid))
cfd.plot()
发音的词典
属于表格词典 ,NLTK中包括美国CMU发音词典,它是为语音合成器使用而设计的。
entries = nltk.corpus.cmudict.entries()
for entr in entries:
print(entr)
输出结果:
对任意一个词,词典资源都有语音的代码——不同的声音有着不同的标签称作音素
比较词表
nltk.corpus.swadesh
包括几种语言的约200个常用词的列表
from nltk.corpus import swadesh
swadesh.fileids()
输出结果:[‘be’, ‘bg’, ‘bs’, ‘ca’, ‘cs’, ‘cu’, ‘de’, ‘en’, ‘es’, ‘fr’, ‘hr’, ‘it’, ‘la’, ‘mk’, ‘nl’, ‘pl’, ‘pt’, ‘ro’, ‘ru’, ‘sk’, ‘sl’, ‘sr’, ‘sw’, ‘uk’]
swadesh.words('en')#英语
输出结果:[u’I’,u’you (singular), thou’,u’he’,u’we’,…u’if’, u’because’, u’name’]
简单的翻译器
fr2en = swadesh.entries(['fr','en'])
translate = dict(fr2en)
print(translate['chien'])
print(translate['nom'])
输出: dog、name