nltk自然语言处理

NLTK
ocr博客:https://www.cnblogs.com/skyfsm/
使用[f(x) for x in text]对文本的每一项目进行操作。
long_words = [w for w in V if len(w) > 15]
fdist.items()
len(set([word.lower() for word in text1]))
sorted([w for w in set(text5) if len(w) > 7 and fdist5[w] > 7])nltk自然语言处理 FreqDist()以一个简单的链表作为输入, ConditionalFreqDist()以一个
对链表
作为输入。nltk自然语言处理
concordance(word)
该方法接受一个单词字符串,会打印出输入单词在文本中出现的上下文,查看单词的上下文可以帮助我们了解单词的词性。
similar(word)
该方法接受一个单词字符串,会打印出和输入单词具有相同上下文的其他单词,也就是说找出和指定单词相似的其他单词,比如monstrous用在the_Pictures上下文中,similar方法会打印出所有使用the_Pictures上下文的单词。
Text::common_contexts(words)
该方法接受一个单词列表,会打印出列表中所有单词共同的上下文。

text1.common_contexts([‘monstrous’, ‘imperial’])

dispersion_plot(words)
该方法接受一个单词列表,会绘制每个单词在文本中的分布情况。
collocations()
该方法会打印出文本中频繁出现的双连词。
FreqDist.plot(n)
该方法接受一个数字n,会绘制出现次数最多的前n项。
FreqDist::tabulate(n)
该方法接受一个数字n作为参数,会以表格的方式打印出现次数最多的前n项。
FreqDist::most_common(n)
该方法接受一个数字n作为参数,返回出现次数最多的前n项列表。
FreqDist::hapaxes():
该方法会返回一个低频项列表,低频项即出现一次的项。
FreqDist::max()
该方法会返回出现次数最多的项。
PlaintextCorpusReader::fileids():该方法返回语料库中的文本标识列表。
PlaintextCorpusReader::words(fileids):该方法接受一个或多个文本标识作为参数,返回文本单词列表。
PlaintextCorpusReader::raw(fileids):该方法接受一个或多个文本标识为参数,返回文本原始字符串。
PlaintextCorpusReader::sents(fileids):该方法接受一个或多个文本标识为参数,返回文本中的句子列表。
from nltk.corpus import gutenberg
CategorizedTaggedCorpusReader::categories():该方法返回语料库中的类别标识。
CategorizedTaggedCorpusReader::fileids(categories):该方法接受一个或多个类别标识作为参数,返回文本标识列表。
CategorizedTaggedCorpusReader::words(fileids, categories):该方法接受文本标识或者类别标识作为参数,返回文本单词列表。
CategorizedTaggedCorpusReader::sents(fileids, categories):该方法接受文本标识或者类别标识作为参数,返回文本句子列表,句子本身是词列表。
ConditionalFreqDist::conditions():返回条件列表。
ConditionalFreqDist::plot(conditions, samples):根据给定的条件和样本,绘制条件频率分布图。
ConditionalFreqDist::tabulate(conditions, samples):根据指定的条件和样本,打印条件频率分布表格。
nltk自然语言处理
nltk.bigrams(words):根据给定的单词列表,生成所有的双连词组。
def stress(pron):
return [char for phone in pron for char in phone if char.isdigit()]

[w for w, pron in entries if stress(pron) == [‘0’, ‘2’, ‘0’, ‘1’, ‘0’]]
这段程序的精妙之处在于:我们的用户自定义函数 stress()调用一个内含
条件的链表推理, 还有一个双层嵌套循环。
nltk自然语言处理如说我们可以追加元素到一个链表,但不能追加元素到一个字符串

nltk.word_tokenize(text):对指定的句子进行分词,返回单词列表。
nltk.pos_tag(words):对指定的单词列表进行词性标记,返回标记列表。

CategorizedTaggedCorpusReader::tagged_words(fileids, categories):该方法接受文本标识或者类别标识作为参数,返回这些文本被标注词性后的单词列表。
CategorizedTaggedCorpusReader::tagged_sents(fileids, categories):该方法接受文本标识或者类别标识作为参数,返回这些文本被标注词性后的句子列表,句子为单词列表。