语言处理与python

一 将文本当作单词列表

1.列表

加法——连接
追加 append()

2.索引列表

text.index(word)

word第一次出现的索引

3.变量

4.字符串

语言处理与python_第1张图片

二 简单统计

1.频率分布

FreqDist

接受参数words后, 会统计words中每个word的频数,并返回一个字典,key是word,value是word在words中出现的频数。

f = FreqDist(text1)
print(f.most_common(10))
//输出频率最高的十个单词

在这里插入图片描述

print(f['to'])
//输出to的出现频率

.hapaxes()低频单词

2.细粒度选择词

w for w in v if p(w)

3.词语搭配和双连词

bigrams() 双连词

list(bigrams(['more', 'is', 'said', 'than', 'done']))

[(‘more’, ‘is’), (‘is’, ‘said’), (‘said’, ‘than’), (‘than’, ‘done’)]
如果上面省掉list(),只输入bigrams([‘more’, …]),你将看到 的输出形式。这是 Python 的方式表示它已经准备好要计算一个序列,在这里是双连词。现在,你只需要知道告诉Python 使用list()将它转换成一个列表。

collocations() 词语搭配

语言处理与python_第2张图片

三 决策与控制

1.条件

语言处理与python_第3张图片

2.对每个元素进行操作

获得没有大小写区分和忽略标点符号的词汇表

set(w.lower() for w in text if w.isalpha())

3.嵌套代码块

t = sorted(w for w in set(text1) if 'cei' in w or 'cie' in w)
for word in t:
    print(word, end=' ')

四 自动理解自然语言

1.词义消歧

2.指代消解

确定代词名词短语指代
语义角色标注——确定名词短语如何与动词相关联

3.自动生成语言

作业

10.a 使用’ '.join()将列表转换成字符串 再使用split()分开
https://www.jianshu.com/p/ade8ebcf38c6

你可能感兴趣的:(NLP)