Python英文词频统计(哈姆雷特)程序示例代码

 更新时间:2023年06月15日 09:05:57   作者:永远是少年啊  
在文本处理方面,Python也有着得天独厚的优势,不仅提供了多种字符串操作函数,而且还可以使用各种开源库来处理文本,下面这篇文章主要给大家介绍了关于Python英文词频统计(哈姆雷特)程序示例的相关资料,需要的朋友可以参考下

今天继续给大家介绍Python相关知识,本文主要内容是Python英文词频统计程序示例,主要是对英文文本——《哈姆雷特》进行分词。

一、英文文本词频统计思路

想要对《哈姆雷特》进行英文单词词频统计,那么我们首先需要拿到《哈姆雷特》的原文,将之存储为本地的txt文档,然后使用Python打开该文件,读取里面的信息。

在读取《哈姆雷特》内容后,我们首先需要将文件内容进行预处理,比如删除文件中的特殊符号,以及对文件内容进行全部小写的归一化操作等等。除此之外,我们还需要删除文档中所有的标点符号。之后,我们可以将文档使用split()函数,根据空格进行分隔,形成一个列表。

之后,我们逐个取出列表中的元素,然后统计列表中单词的个数。为了进行词频统计,我们需要创建一个字典变量,以单词为键,以统计出的单词个数为值,在遍历列表时不断更新该字典,就可以最终得到一个含有所有《哈姆雷特》内容单词词频的字典了。

最后,我们按照该字典转化为一个新的列表,就可以对值的大小对该字典进行排序,得到《哈姆雷特》词频从大到小的顺序了。

二、英文文本词频统计程序编写

根据上述思路,我们可以来编写英文文本词频统计程序了。

打开文件及读取文件内容程序代码如下所示:

f=open("C:\\Users\\Administrator\\Desktop\\哈姆雷特原文.txt","rt",encoding="utf-8")
Hamlet=f.read()
f.close()

对文件内容进行预处理代码如下所示:

Hamlet=Hamlet.lower()
for char in "!@#$%^&*()_+~`,./;'[]\<>?:\"{}|":
    Hamlet=Hamlet.replace(char,"")

对文件单词进行统计代码如下所示:

counts=dict()
for word in words:
    counts[word]=counts.get(word,0)+1

对字典生成新的列表,并进行排序,代码如下所示:

sequence=list(counts.items())
sequence.sort(key=lambda x:x[1],reverse=True)

筛选出单词出现频率最高的10个单词,并进行输出,代码如下所示:

for i in range(10):
    word,count=sequence[i]
    print("单词{}在Hamlet中出现次数为第{},出现了{}次".format(word,i+1,count))

最终代码如下所示:

f=open("C:\\Users\\Administrator\\Desktop\\哈姆雷特原文.txt","rt",encoding="utf-8")
Hamlet=f.read()
f.close()
Hamlet=Hamlet.lower()
for char in "!@#$%^&*()_+~`,./;'[]\<>?:\"{}|":
    Hamlet=Hamlet.replace(char,"")
words=Hamlet.split()
counts=dict()
for word in words:
    counts[word]=counts.get(word,0)+1
sequence=list(counts.items())
sequence.sort(key=lambda x:x[1],reverse=True)
for i in range(10):
    word,count=sequence[i]
    print("单词{}在Hamlet中出现次数为第{},出现了{}次".format(word,i+1,count))

三、程序执行结果展示

运行上述程序,我们最终得到结果如下所示:

从上图可以看出,我们成功统计出了在《哈姆雷特》中出现次数最多的10个单词。

总结

到此这篇关于Python英文词频统计(哈姆雷特)程序的文章就介绍到这了,更多相关Python英文词频统计内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python求素数示例分享

    python求素数示例分享

    这篇文章主要介绍了python求素数示例,打印出素数列表,需要的朋友可以参考下
    2014-02-02
  • pandas DataFrame.to_sql()用法小结

    pandas DataFrame.to_sql()用法小结

    Pandas是基于NumPy的一种工具,该工具是为了解决数据分析任务而创建的,本文主要介绍了pandas DataFrame.to_sql()用法小结,感兴趣的可以了解一下
    2024-02-02
  • tensorflow 中对数组元素的操作方法

    tensorflow 中对数组元素的操作方法

    今天小编就为大家分享一篇tensorflow 中对数组元素的操作方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-07-07
  • 利用TensorFlow训练简单的二分类神经网络模型的方法

    利用TensorFlow训练简单的二分类神经网络模型的方法

    本篇文章主要介绍了利用TensorFlow训练简单的二分类神经网络模型的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-03-03
  • python爬虫之教你如何爬取地理数据

    python爬虫之教你如何爬取地理数据

    这篇文章主要介绍了python爬虫之教你如何爬取地理数据,文中有非常详细的代码示例,对正在学习python的小伙伴们有很好的帮助,需要的朋友可以参考下
    2021-04-04
  • pd.drop_duplicates删除重复行的方法实现

    pd.drop_duplicates删除重复行的方法实现

    drop_duplicates 方法实现对数据框 DataFrame 去除特定列的重复行,本文主要介绍了pd.drop_duplicates删除重复行的方法实现,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-06-06
  • python实现使用遗传算法进行图片拟合

    python实现使用遗传算法进行图片拟合

    最近做项目需要图像拟合,本文主要介绍了python实现使用遗传算法进行图片拟合,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • 使用Python开发Markdown兼容公式格式转换工具

    使用Python开发Markdown兼容公式格式转换工具

    在技术写作中我们经常遇到公式格式问题,例如MathML无法显示,LaTeX格式错乱等,所以本文我们将使用Python开发Markdown兼容公式格式转换工具,有需要的小伙伴可以了解下
    2025-05-05
  • pychram中切换python版本方式(附图文)

    pychram中切换python版本方式(附图文)

    这篇文章主要介绍了如何在PyCharm中切换Python版本的步骤,包括查看现有版本、文件设置切换、选择解释器路径以及应用更改,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2024-12-12
  • 使用k8s部署Django项目的方法步骤

    使用k8s部署Django项目的方法步骤

    这篇文章主要介绍了使用k8s部署Django项目的方法步骤,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-01-01

最新评论