英文文本的词频统计

摘要:
关键问题是:英语中既有大写字母又有小写字母,这会干扰词频统计结果,因此所有英文字母都应该转换成大写或小写字母;英语单词可能用空格、标点符号或其他特殊符号分隔,因此这些特殊符号应该用空格代替;根据空格分隔文本;用字典统计单词的数量;由于字典没有排序功能,您可以将字典转换为列表并对统计结果进行排序。

英文文本由于不涉及分词问题,词频统计相对而言简单一些。以下是一个对英文文本进行词频统计的例子。其中的关键问题有:(1)英文中同时存在大小写,会干扰词频统计的结果,所以应将所有的英文字母转化为大写或小写;(2)英文单词可能被空格、标点或其他特殊符号分隔,因此应将这些特殊符号统一替换为空格;(3)根据空格对文本进行分隔;(4)用词典统计单词的出现次数;(5)由于词典不具有排序功能,可以将词典转化列表,再对统计结果进行排序。

import string

#文本词频统计
f=open("story.txt","r")
txt=f.read()
#将所有字母转化为小写,排除大小写差异对词频统计的干扰
txt.lower()
#为统一单词的切分方式,将各种特殊字符和标点符号都替换为空格
for ch in string.punctuation:
    txt=txt.replace(ch," ")
#根据空格对文本进行切分
words=txt.split()
#创建一个空词典,用于存放统计结果
result={}
for word in words:
    result[word]=result.get(word,0)+1
#为便于排序,将词典转化为列表
items=list(result.items())
#根据单词的频数从高到低排序
items.sort(key=lambda x:x[1],reverse=True)
#输出全部
print(items)
#输出排序结果中位于前10位的单词
for i in range(10):
    print(items[i])

参考资料:嵩天.《全国计算机等级考试二级教程——Python语言程序设计》[M].北京:高等教育出版社,105-107.

免责声明:文章转载自《英文文本的词频统计》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇冯·诺依曼为后生解围C#-MVC开发常见异常处理下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

机器学习基础——带你实战朴素贝叶斯模型文本分类

本文始发于个人公众号:TechFlow 上一篇文章当中我们介绍了朴素贝叶斯模型的基本原理。 朴素贝叶斯的核心本质是假设样本当中的变量服从某个分布,从而利用条件概率计算出样本属于某个类别的概率。一般来说一个样本往往会含有许多特征,这些特征之间很有可能是有相关性的。为了简化模型,朴素贝叶斯模型假设这些变量是独立的。这样我们就可以很简单地计算出样本的概率。 想要...

xshell快捷键

ctrl + tab 切换选项卡 删除ctrl + d      删除光标所在位置上的字符相当于VIM里x或者dlctrl + h      删除光标所在位置前的字符相当于VIM里hx或者dhctrl + k      删除光标后面所有字符相当于VIM里d shift+$ctrl + u      删除光标前面所有字符相当于VIM里d shift+^ct...

关于英语作文AI批改的思考(含定向高分方案)

在科技高速发展的今天,借助于AI,我们的老师终于能摆脱繁重的作业批改任务,从而把时间投入到更高效的教学工作中去。然而,我在多次的体验中,越来越发现AI批改英语作文的弊病。 有时候自己认真敲出来的作文,甚至还没有别人随便一篇中文翻译出来的分数高。 自己的语法明明正确,但是却一直报错。 自己不甘80分的命运,疯狂输入大量优美句子,然而分数仍然不涨。 在看到别...

ubuntu修改中文文件夹名字为英文

为了使用起来方便,装了ubuntu中文版,自然在home文件里用户目录的“桌面”、“图片”、“视频”、“音乐”……都是中文的。    很多时候都喜欢在桌面上放一些要操作的文件,Linux里命令行操作又多,难免会用命令行操作桌面上的东西,那么就要 “cd  桌面”,打“桌面”的时候要输入法切换,麻烦……所以就想办法把用户目录下的路径改成英文,而其他的中文不变...

SQL判断某列中是否包含中文字符、英文字符、纯数字

一、包含中文字符 select * from 表名 where 列名 like '%[吖-座]%' 二、包含英文字符 select * from 表名 where 列名 like '%[a-z]%'  三、包含纯数字 select * from 表名 where 列名 like '%[0-9]%'...

英文论文里的缩写:e.g. etc. et al. i.e.

在英文论文写作中,经常会遇到常见的缩写,很容易搞混或写错。 e.g. etc. et al. i.e.都是拉丁文的缩写,但在现代科技文献中仍广为使用。 下面就来介绍一下这些缩写到底是什么意思,该怎么用: (1)et al. et al. 是用得最多的,一般在文中引用学者成果或者是参考文献时,罗列作者时的省略。 它的完整写法应该是 et alia,意为“...