本文实例讲述了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:])

PS:这里再为大家推荐2款相关统计工具供大家参考:

在线字数统计工具:http://tools.jb51.net/code/zishutongji

在线字符统计与编辑工具:http://tools.jb51.net/code/char_tongji

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python文件与目录操作技巧汇总》、《Python文本文件操作技巧汇总》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》

希望本文所述对大家Python程序设计有所帮助。

时间: 2019-01-28

python 英语词频统计_Python实现统计英文文章词频的方法分析相关推荐

  1. python英文文本词频统计_python编程:英文小说词频统计

    一.编程目的: 1.英文小说(The Myths )分词,并进行词频统计 2.绘制词频统计直方图 3.为小说情感分析做准备 二.编程环境: 1.pyhon3+pycharm 2.需安装模块:strin ...

  2. python中矩阵加法_Python实现矩阵加法和乘法的方法分析

    本文实例讲述了python实现矩阵加法和乘法的方法.分享给大家供大家参考,具体如下: 本来以为python的矩阵用list表示出来应该很简单可以搞..其实发现有大学问. 这里贴出我写的特别不pytho ...

  3. python 英语词频统计软件_Python实现统计英文文章词频的方法分析

    本文实例讲述了Python实现统计英文文章词频的方法.分享给大家供大家参考,具体如下: 应用介绍: 统计英文文章词频是很常见的需求,本文利用python实现. 思路分析: 1.把英文文章的每个单词放到 ...

  4. python英文词频统计并按顺序输出_Python实现统计英文文章词频的方法分析

    本文实例讲述了python实现统计英文文章词频的方法.分享给大家供大家参考,具体如下: 应用介绍: 统计英文文章词频是很常见的需求,本文利用python实现. 思路分析: 1.把英文文章的每个单词放到 ...

  5. python英文词频统计-Python实现统计英文文章词频的方法分析

    本文实例讲述了Python实现统计英文文章词频的方法.分享给大家供大家参考,具体如下: 应用介绍: 统计英文文章词频是很常见的需求,本文利用python实现. 思路分析: 1.把英文文章的每个单词放到 ...

  6. python哈姆雷特词频统计_Python练习题15:文本词频统计:英文版哈姆雷特

    文本词频统计::一篇文章,出现了哪些词?哪些词出现的最多? ‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬ ...

  7. python做前端可视化_Python数据可视化的四种简易方法

    摘要: 本文讲述了热图.二维密度图.蜘蛛图.树形图这四种Python数据可视化方法. 数据可视化是任何数据科学或机器学习项目的一个重要组成部分.人们常常会从探索数据分析(EDA)开始,来深入了解数据, ...

  8. python类继承实例_python类继承与子类实例初始化用法分析

    这篇文章主要介绍了python类继承与子类实例初始化用法,实例分析了Python类的使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下 [ 先贴参考书籍原文(中文英文对照)] __init__方法介 ...

  9. python列表转换成数字_Python中列表元素转为数字的方法分析

    本文实例讲述了Python中列表元素转为数字的方法.分享给大家供大家参考,具体如下: 有一个数字字符的列表: numbers = ['1', '5', '10', '8'] 想要把每个元素转换为数字: ...

  10. python提取数组元素_python简单获取数组元素个数的方法

    python简单获取数组元素个数的方法 更新时间:2015年07月13日 17:54:46 作者:pythoner 这篇文章主要介绍了python简单获取数组元素个数的方法,实例分析了Python中l ...

最新文章

  1. Redis 分布式锁如何自动续期
  2. 对口单招考试能用计算机吗,对口单招计算机能考试标准.doc
  3. python语言程序的特点_Python语言有哪些优点?
  4. SQL Calendar Table
  5. 关于[super dealloc]
  6. java mysql websocket_javaweb-ajax-websocket-mysql
  7. 设计模式之单例模式8种实现方式,其七:静态内部类
  8. AI创业营第三期拉开帷幕:生存训练+思想盛宴
  9. 正点原子STM32F429阿波罗板,固件库工程搭建
  10. 织梦dedecms内核手赚网手机试玩平台源码PC+手机版
  11. 面试题10:青蛙跳台阶
  12. Serverless实战——2分钟,教你用Serverless每天给女朋友自动发土味情话
  13. linux用户管理(1)----创建用户(adduser和useradd)和删除用户(userdel)
  14. Neo4j 图数据库高级应用系列 / 服务器扩展指南 APOC 8.5 - 图生成 / 随机图
  15. 【CSS】用CSS画太极图
  16. uniapp picker选择器注意点
  17. 英文状态下输入字母,字母之间的间隔较大怎么解决?
  18. 12枚硬币中取1枚假币的问题
  19. opencv4.5.3学习——开发环境搭建
  20. Google Play ASO 系列 - 尽力获得官方推荐

热门文章

  1. c语言flag跳出循环,四种方法跳出多层循环(return goto flag try)
  2. latex加下划线_Latex学习系列之粗体、斜体和下划线
  3. Centos操作系统:文件的上传、下载、压缩、解压缩
  4. DCDC开关电源的阶跃响应和动态响应(Load Transient)的区别
  5. 晒晒自己写的C++小程序(初学,书上的题目)
  6. 微信支付-JASPI:准备工作[微信公众平台配置,微信商户平台配置]
  7. STM32开发项目:步进电机驱动库
  8. c语言的sin cos是弧度,C++中cos,sin,asin,acos這些三角函數操作的是弧度,而非角度(轉)...
  9. SpringBoot 发送邮件和附件(实用版)
  10. 创建新环境出现报错Collecting package metadata (current_repodata.json): failed.问题成功解决。