【频率分布】
目的:想通过找到一本书中使用最频繁的词汇,分析这本书的主题和风格。
频率分布:告诉我们每个词汇出现的频率。
分析高频词
-使用FreqDist寻找《白鲸记》中最常见的50个词
 fdist1=FreqDist(text1)
 vocabulary1=fdist.keys()//所有的词汇
 vocabulary1[:50]//前50个出现频率最高的词汇
 fdist1['whale'](906)//出现的次数
-累积频率图
 fdist1.plot(50,cumulative=True)
-在高频词汇中,有很多无用的词汇,称作管道英语。
分析低频词
-只出现了一次的词(hapaxes)
 fdist1.hapaxes()
-低频词汇也很多,如果不分析上下文很难才出他们的意义。高频和低频词汇都很少有帮助,要寻找其他办法分析。
【细粒度的选择词】
-找出长度大于15的词汇
v=set(text1)
long_words=[w for w in v if len(w)>15]
sorted(long_words)
-这样找到了长词。在此基础上,在分析长词出现的概率,会更有效。这样忽略的短高频词(the)和长低频词(antiphilosophists)。
-fdist5=FreqDist(text5)
-sorted([w for w in set(text5) if len(w)>7 and fdist5[w]>7])
【词语搭配和双连词(bigrams)】
-使用bigrams提取文本词汇中的词对,也就是双连词。
 bigrams(['more','is','said','than','done'])
-text4.collocations()找到比我们基于单个词的频率预期得到的更频繁出现的双连词
【计数其他东西】
-查看词长的分布
 [len(w) for w in text1]
 fdist=FreqDist([len(w) for w in text1])
 fdist.keys()
 fdist.items()
 fdist.max()//出现长度最多的数值
 fdist[3]//3对应出现的次数
 fdist.freq(3)//出现的频率
-一些常用的NLTK频率分布类中定义的函数
fdist=FreqDist(samples)创建包含给定样本的频率分布
fist.inc(sample)增加样本
fdist['monstrous']计数给定样本出现的次数
fdist.freq('monstrous')给定样本的频率
fdistN()样本总数
fdist.keys()以频率递减顺序排序的样本链表
for sample in fdist:以频率递减的顺序遍历样本
fdist.max()数值最大的样本
fdist.tabulate()绘制频率分布表
fdist.plot()绘制频率分布图
fdist.plot(cumulative=True)绘制累计频率分布图
fdist1<fdist2测试样本在fdist1中出现的概率是否小于fdist2

转载于:https://www.cnblogs.com/createMoMo/archive/2013/05/14/3078341.html

【语言处理与Python】1.3计算语言:简单的统计相关推荐

  1. 有c语言基础学python要多久-C语言是学python的基础吗?

    先说结论: 不是! 没有C语言的基础 完全可以从零开始学习Python! 两种编程语言完全不同的风格与属性,非常独立. 所以看你自己的目标是否需要学习. 推荐直接上手Python,除非你是科班学生,或 ...

  2. python和别的脚本语言_PHP与Python与其它脚本语言

    南京,微风,周五,晴. 今天在这里记录下php的一个功能点:执行外部其它语言程序 感觉很赞吧,是的,php可以执行外部程序,如python语言编写的脚本程序. 先来知晓一下php的几个函数吧: 1. ...

  3. c语言代码可以python运行吗_c语言如何运行python脚本

    目前的C/C++与python的混合编程分为两大类: 1.使用python调用c/c++编写的扩展库,扩展python的功能,我们暂且称为python调用c/c++ 2.使用c/c++程序调用执行py ...

  4. Python圆面积的计算、简单的人名对话、同切圆的绘制、日期和时间的输出。

    圆面积的计算.根据圆的半径计算圆的面积. 代码如下: #1.1 CalCirArea.py radius = 25 area = 3.1415 * radius * radius print(area ...

  5. python函数封装计算n_python | 高效使用统计语言模型kenlm:新词发现、分词、智能纠错等...

    py-kenlm-model python | 高效使用统计语言模型kenlm:新词发现.分词.智能纠错等 之前看到苏神[重新写了之前的新词发现算法:更快更好的新词发现]中提到了kenlm,之前也自己 ...

  6. 【Python 自然语言处理 第二版】读书笔记1:语言处理与Python

    文章目录 前言 语言处理与Python 一.语言计算:文本和单词 1.NLTK入门 (1)安装(nltk.nltk.book) (2)搜索文本 (3)词汇计数 2.列表与字符串 (1)列表操作 (2) ...

  7. 《Python自然语言处理(第二版)-Steven Bird等》学习笔记:第01章 语言处理与Python

    第01章 语言处理与Python 1.1 语言计算:文本和单词 Python入门 NLTK 入门 搜索文本 计数词汇 1.2 近观Python:将文本当做词链表 链表(list,也叫列表) 索引列表 ...

  8. 【计算理论】可判定性 ( 计算模型与语言 | 区分 可计算语言 与 可判定语言 | 证明 通用图灵机语言是 可计算语言 | 通用任务图灵机 与 特殊任务图灵机 )

    文章目录 一.计算模型与语言 二.区分 可计算语言 与 可判定语言 三.证明 ATM\rm A_{TM}ATM​ 语言 可计算 四.通用 ( Universal ) 任务图灵机 与 特殊任务图灵机 一 ...

  9. c+和python先学哪个,c语言和python先学哪个比较简单

    c语言和python相比来说,python要简单一些,先学python容易上手.不过,c语言比python难,若是先学c语言可以或许打好基础,日后再学习别的语言要简单得多.不管先学哪个都可以,看大家自 ...

  10. 《Python自然语言处理》——第1章 语言处理与Python 1.1 语言计算:文本和词汇...

    本节书摘来自异步社区<Python自然语言处理>一书中的第1章,第1.1节,作者[美]Steven Bird,Ewan Klein,Edward Loper, 陈涛,张旭,崔杨,刘海平 译 ...

最新文章

  1. [leetcode] remove duplicate letters
  2. C++之类型萃取技巧
  3. Spring4 MVC HelloWorld 注解和JavaConfig实例
  4. ESlint全局安装(安装教程) - cmd篇
  5. vscode用作markdown入门2--代码上下标目录字体
  6. android studio table居中代码_html table表格标签内容如何居中显示?表格的align属性的用法介绍...
  7. #define 与 typedef
  8. 询问任意区间的min,max,gcd,lcm,sum,xor,or,and
  9. java使用tar算法压缩解压缩文件、数据流、byte[]字节数组
  10. 8.jenkins 忘记管理员密码
  11. 147.有序数组的TwoSum(力扣leetcode) 博主可答疑该问题
  12. 计算机二级——C语言程序设计 知识点整理
  13. cmake安装及下载
  14. python中的auto_ml自动机器学习框架学习实践
  15. 修改xshell的配色方案
  16. UNITY接入ANDROID密匙
  17. 宋智孝那个机器人_陈柏霖机器人竟然冷落宋智孝
  18. Hi3512的IPCAM开发
  19. Lesson 43 Smart 组件 vs Dumb 组件
  20. 使用EPW计算孤立ME方程

热门文章

  1. 阶段5 3.微服务项目【学成在线】_day02 CMS前端开发_20-CMS前端页面查询开发-页面原型-页面内容完善...
  2. 阶段3 3.SpringMVC·_01.SpringMVC概述及入门案例_02.SpringMVC框架的介绍
  3. 阶段3 1.Mybatis_07.Mybatis的连接池及事务_5 mybatis中使用poolead配置连接的原理分析...
  4. Appium脚本(2):元素检测
  5. 设置和获取函数体现的软件工程
  6. [ACM训练] 算法初级 之 基本算法 之 枚举(POJ 1753+2965)
  7. 三 数据结构 --数和二叉树
  8. (转)C# 解析 json
  9. 【Hibernate3.3复习知识点一】 - 配置hibernate环境(XML)。
  10. 公务员工资分配的一种方法