基础语法

搜索文本----词语索引使我们看到词的上下

text1.concordance("monstrous")

词出现在相似的上下文中

text1.similar("monstrous")

函数common_contexts允许我们研究两个或两个以上的词共同的上下文

text2.common_contexts(["monstrous", "very"])

以判断词在文本中的位置,用离散图表示  ,每一个竖线代表一个单词,每一行代表整个文本

text4.dispersion_plot(["citizens", "democracy", "freedom", "duties", "America"])

不同风格产生一些随机文本

text3.generate()

获取文本长度

len(text3)

获得text3 的词汇表(set为集合,元素不可重复)

set(text3)

得到一个词汇项的排序表(排序表中大写字母出现在小写字母之前)

sorted(set(text3))

了每个字平均被使用次数(使用的是浮点除法)

from __future__ import division

len(text3) / len(set(text3))

计数一个词在文本中出现的次数,计算一个特定的词在文本中占据的百分比。

text3.count("smote")

100 * text4.count('a') / len(text4)

了每个字平均被使用次数(函数)

def lexical_diversity(text):

return len(text) / len(set(text))

百分比

def percentage(count, total):

return 100 * count / total

链表(list,也叫列表)(nltk.book 已经为你定义了一些链表 sent2~sent9)

sent1 = ['Call', 'me', 'Ishmael', '.']

对链表使用Python 加法运算----连接----它将多个链表组合为一个链表

['Monty', 'Python'] + ['and', 'the', 'Holy', 'Grail']

sent4 + sent1

向链表中增加一个元素----追加

sent1.append("Some")

索引列表(索引从零开始)

text4[173]

获取子链表----切片

text5[16715:16735]

切片5:8 包含索引5,6 和7    m:n 表示元素m...n-1

sent = ['word1', 'word2', 'word3', 'word4', 'word5','word6', 'word7', 'word8', 'word9', 'word10']

sent[5:8]

如果切片从链表第一个元素开始,我们可以省略第一个数字;如果切片到链表最后一个元素处结尾,我们可以省略第二个数字:

sent[:3]

text2[141525:]

从倒数第二个开始到最后

tokens[-2:]

通过指定它的索引值来修改链表中的元素

sent = ['word1', 'word2', 'word3', 'word4', 'word5','word6', 'word7', 'word8', 'word9', 'word10']

sent[0] = 'First'

也可以用新内容替换掉一整个片段

sent[1:9] = ['Second', 'Third']

字符串(切片,乘法,加法,连接,分割)

name = 'Monty'

name[0]

name[:4]

name * 2

name + '!'

' '.join(['Monty', 'Python'])

'Monty Python'.split()

python自然语言处理学习笔记2的更多相关文章

  1. python自然语言处理学习笔记1

    1.搭建环境 下载anaconda并安装,(其自带python2.7和一些常用包,NumPy,Matplotlib),第一次启动使用spyder 2.下载nltk import nltk nltk.d ...

  2. Python自然语言处理学习笔记之性别识别

    从今天起开始写自然语言处理的实践用法,今天学了文本分类,并没用什么创新的东西,只是把学到的知识点复习一下 性别识别(根据给定的名字确定性别) 第一步是创建一个特征提取函数(feature extrac ...

  3. python自然语言处理——学习笔记:Chapter3纠错

    2017-12-06更新:很多代码执行结果与书中不一致,是因为python的版本不一致.如果发现有问题,可以参考英文版: http://www.nltk.org/book/ 第三章,P87有一段处理h ...

  4. Python自然语言处理学习笔记(69)

    http://www.cnblogs.com/yuxc/archive/2012/02/09/2344474.html Chapter8    Analyzing Sentence Structure ...

  5. Python自然语言处理学习笔记之信息提取步骤&分块(chunking)

    一.信息提取模型 信息提取的步骤共分为五步,原始数据为未经处理的字符串, 第一步:分句,用nltk.sent_tokenize(text)实现,得到一个list of strings 第二步:分词,[ ...

  6. Python自然语言处理学习笔记之评价(evaluationd)

    对模型的评价是在test set上进行的,本文首先介绍测试集应该满足的特征,然后介绍四种评价方法. 一.测试集的选择 1.首先,测试集必须是严格独立于训练集的,否则评价结果一定很高,但是虚高,不适用于 ...

  7. Python自然语言处理学习笔记之选择正确的特征(错误分析 error analysis)

    选择合适的特征(features)对机器学习的效率非常重要.特征的提取是一个不断摸索的过程(trial-and-error),一般靠直觉来发现哪些特征对研究的问题是相关的. 一种做法是把你能想到的所有 ...

  8. Requests:Python HTTP Module学习笔记(一)(转)

    Requests:Python HTTP Module学习笔记(一) 在学习用python写爬虫的时候用到了Requests这个Http网络库,这个库简单好用并且功能强大,完全可以代替python的标 ...

  9. python网络爬虫学习笔记

    python网络爬虫学习笔记 By 钟桓 9月 4 2014 更新日期:9月 4 2014 文章文件夹 1. 介绍: 2. 从简单语句中開始: 3. 传送数据给server 4. HTTP头-描写叙述 ...

随机推荐

  1. 框架之一:mybatis

    同时加载驱动包 mysql+mybatis 创建bean对应的mapper接口bookMapper package com.imu.mzw.mapper; import java.util.List; ...

  2. RHEL6中LVM逻辑卷管理

    1.LVM 基本术语   物理卷(physical volume):物理卷在逻辑卷管理中处于最底层,它可以是实际物理硬盘上的分区,也可以是整个物理硬盘.   卷组(Volume Group):卷组建立 ...

  3. margin 负边距 的知识点

    本文介绍了css负边距在普通文档流中的作用和效果.左和右的css负边距对元素宽度的影响.css负边距对浮动元素的影响.css负边距对绝对定位元素的影响.懒人建站偶然浏览到这篇文章,感觉非常好,于是分享 ...

  4. Kay and Snowflake CodeForces - 686D (树的重心性质)

    After the piece of a devilish mirror hit the Kay's eye, he is no longer interested in the beauty of ...

  5. iptables设置

    一,安装iptables yum -y install iptables-services iptables-devel 二,查看规则 iptables -nL --line-number 三,清空规 ...

  6. Kendo UI for jQuery使用教程:使用MVVM初始化(一)

    [Kendo UI for jQuery最新试用版下载] Kendo UI目前最新提供Kendo UI for jQuery.Kendo UI for Angular.Kendo UI Support ...

  7. fedora 29 安装ALSA声音驱动

    centos系列解决 安装utils时遇到的问题 configure: error: this packages requires a curses library yum install ncurs ...

  8. js 百分比显示页面加载进度

    做东西遇到显示页面百分比的加载进度,不过里面的图片较多,看了别人的代码,才想到可以通过图片的加载显示加载的百分比,做一下笔记: html: <span id="percent" ...

  9. JAVA笔记12-接口interface

    1.概念:接口是抽象方法和常量值得定义的集合.本质上,接口是一种特殊的抽象类,这种抽象类只包含常量和方法的定义,而没有变量和方法的实现. 接口定义举例: 2.接口特性: (1)接口可以多重实现:(接口 ...

  10. EF Core命令

    新建 Add-Migration init Update-Database init 修改model后,执行迁移的命令 更新数据库 每次更新都要{update}修改 Add-Migration {up ...