Python实现统计英文文章词频的方法分析


Posted in Python onJanuary 28, 2019

本文实例讲述了Python实现统计英文文章词频的方法。分享给大家供大家参考,具体如下:

应用介绍:

统计英文文章词频是很常见的需求,本文利用python实现。

思路分析:

1、把英文文章的每个单词放到列表里,并统计列表长度;
2、遍历列表,对每个单词出现的次数进行统计,并将结果存储在字典中;
3、利用步骤1中获得的列表长度,求出每个单词出现的频率,并将结果存储在频率字典中;
4、以字典键值对的“值”为标准,对字典进行排序,输出结果(也可利用切片输出频率最大或最小的特定几个,因为经过排序sorted()函数处理后,单词及其频率信息已经存储在元组中,所有元组再组成列表。)

代码实现:

fin = open('The_Magic_Skin _Honore_de_Balzac.txt') #the txt is up
#to you
lines=fin.readlines()
fin.close()
'''transform the article into word list
'''
def words_list():
  chardigit='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789 '
  all_lines = ''
  for line in lines:
    one_line=''
    for ch in line:
      if ch in chardigit:
        one_line = one_line + ch
    all_lines = all_lines + one_line
  return all_lines.split()
'''calculate the total number of article list
s is the article list
'''
def total_num(s):
  return len(s)
'''calculate the occurrence times of every word
t is the article list
'''
def word_dic(t):
  fre_dic = dict()
  for i in range(len(t)):
    fre_dic[t[i]] = fre_dic.get(t[i],0) + 1
  return fre_dic
'''calculate the occurrence times of every word
w is dictionary of the occurrence times of every word
'''
def word_fre(w):
  for key in w:
    w[key] = w[key] / total
  return w
'''sort the dictionary
v is the frequency of words
'''
def word_sort(v):
  sort_dic = sorted(v.items(), key = lambda e:e[1])
  return sort_dic
'''This is entrance of functions
output is the ten words with the largest frequency
'''
total = total_num(words_list())
print(word_sort(word_fre(word_dic(words_list())))[-10:])
Python 相关文章推荐
Python的Django应用程序解决AJAX跨域访问问题的方法
May 31 Python
python 实现网上商城,转账,存取款等功能的信用卡系统
Jul 15 Python
【Python】Python的urllib模块、urllib2模块批量进行网页下载文件
Nov 19 Python
python实现报表自动化详解
Nov 16 Python
Python编程二分法实现冒泡算法+快速排序代码示例
Jan 15 Python
Python合并同一个文件夹下所有PDF文件的方法
Mar 11 Python
python飞机大战pygame游戏之敌机出场实现方法详解
Dec 17 Python
python编程进阶之异常处理用法实例分析
Feb 21 Python
什么是python的id函数
Jun 11 Python
keras 自定义loss model.add_loss的使用详解
Jun 22 Python
教你怎么用Python生成九宫格照片
May 20 Python
python图片灰度化处理的几种方法
Jun 23 Python
Python3实现统计单词表中每个字母出现频率的方法示例
Jan 28 #Python
Python判断变量名是否合法的方法示例
Jan 28 #Python
Python使用while循环花式打印乘法表
Jan 28 #Python
Python实现程序判断季节的代码示例
Jan 28 #Python
Python后台管理员管理前台会员信息的讲解
Jan 28 #Python
Python之列表实现栈的工作功能
Jan 28 #Python
Python中常用的内置方法
Jan 28 #Python
You might like
php中常用的预定义变量小结
2012/05/09 PHP
Yii使用Captcha验证码的方法
2015/12/28 PHP
php array_reverse 以相反的顺序返回数组实例代码
2017/04/11 PHP
PHP面向对象程序设计继承用法简单示例
2018/12/28 PHP
js 效率组装字符串 StringBuffer
2009/12/23 Javascript
jQuery1.4.2与老版本json格式兼容的解决方法
2011/02/12 Javascript
获取元素距离浏览器周边的位置的方法getBoundingClientRect
2013/04/17 Javascript
用IE重起计算机或者关机的示例代码
2014/03/10 Javascript
JS函数重载的解决方案
2014/05/13 Javascript
JavaScript中的函数嵌套使用
2015/06/04 Javascript
jQuery事件的绑定、触发、及监听方法简单说明
2016/05/10 Javascript
NodeJS遍历文件生产文件列表功能示例
2017/01/22 NodeJs
JS日程管理插件FullCalendar简单实例
2017/02/07 Javascript
深入理解Javascript中的作用域链和闭包
2017/04/25 Javascript
详解Vue路由History mode模式中页面无法渲染的原因及解决
2017/09/28 Javascript
VUE + UEditor 单图片跨域上传功能的实现方法
2018/02/08 Javascript
解决bootstrap中下拉菜单点击后不关闭的问题
2018/08/10 Javascript
通过js示例讲解时间复杂度与空间复杂度
2019/08/06 Javascript
js实现幻灯片轮播图
2020/08/14 Javascript
jQuery实现鼠标拖动图片功能
2021/03/04 jQuery
python中Flask框架简单入门实例
2015/03/21 Python
详解Python中的Descriptor描述符类
2016/06/14 Python
安装python及pycharm的教程图解
2019/10/10 Python
python_matplotlib改变横坐标和纵坐标上的刻度(ticks)方式
2020/05/16 Python
python字典的值可以修改吗
2020/06/29 Python
python Matplotlib数据可视化(1):简单入门
2020/09/30 Python
Django视图类型总结
2021/02/17 Python
详解利用css3的var()实现运行时改变scss的变量值
2021/03/02 HTML / CSS
HTML5在微信内置浏览器下右上角菜单的调整字体导致页面显示错乱的问题
2021/01/19 HTML / CSS
德国团购网站:Groupon德国
2018/03/13 全球购物
中学老师的自我评价
2013/11/07 职场文书
电脑教师的自我评价
2013/12/18 职场文书
物业保安主管岗位职责
2013/12/25 职场文书
银行营业厅大堂经理岗位职责
2014/01/06 职场文书
CSS几步实现赛博朋克2077风格视觉效果
2021/06/16 HTML / CSS
小程序实现悬浮按钮的全过程记录
2021/10/16 HTML / CSS