实验 4:中文文本分析与统计。 要求:给出一篇文档“wind.txt”,统计其中词频前 3 位的词及出现次数。 提示:中文文本分析与统计通常是将文件操作与第三方库 jieba 库、字典、列表等知识点结 合在一起,重点在于知识综合运用能力。 (1)导入第三方库 jieba 库,该库用于中文分词。 (2)使用当前操作系统默认的编码方式,打开文本文件“wind.txt”,并将文件内容读取 到变量 txt 中。 (3)使用 jieba 库的 lcut()方法将 txt 变量分词,分词结果保存到列表 ls 中。 (4)完成词频统计功能,并保存在字典中;将字典中的统计结果保存到列表 freq_word 中,然后根据出现频次排序,最后输出

时间: 2024-02-05 10:11:48 浏览: 27
以下是代码示例: ```python import jieba # 读取文本文件 with open('wind.txt', 'r', encoding='utf-8') as f: txt = f.read() # 分词 ls = jieba.lcut(txt) # 统计词频 word_freq = {} for word in ls: if len(word) > 1: word_freq[word] = word_freq.get(word, 0) + 1 # 根据词频排序 freq_word = sorted(word_freq.items(), key=lambda x: x[1], reverse=True)[:3] # 输出结果 print("词频前三的词及出现次数:") for word, freq in freq_word: print(word, freq) ``` 解释一下代码的过程: 1. 导入了 jieba 库。 2. 使用 `with open()` 打开文本文件,读取文件内容到变量 `txt` 中。 3. 使用 `jieba.lcut()` 方法对文本进行分词,将分词结果保存到列表 `ls` 中。 4. 初始化一个空字典 `word_freq`,用于统计每个词出现的次数。遍历列表 `ls` 中的每个词,如果该词长度大于 1,就在字典 `word_freq` 中将该词的出现次数加 1。 5. 使用 `sorted()` 函数对词频字典 `word_freq` 进行排序,并取出前三个词,将结果保存到列表 `freq_word` 中。 6. 遍历列表 `freq_word`,输出每个词及其出现次数。 注意,以上代码中用到的 `wind.txt` 文件需要与代码文件在同一目录下,并且文件编码方式为 UTF-8。如果文件编码方式不是 UTF-8,需要在 `open()` 函数中指定正确的编码方式。

相关推荐

最新推荐

recommend-type

C语言实现英文文本词频统计

主要为大家详细介绍了C语言实现英文文本词频统计,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
recommend-type

Python 合并多个TXT文件并统计词频的实现

主要介绍了Python 合并多个TXT文件并统计词频的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
recommend-type

基于hadoop的词频统计.docx

基于hadoop的词频统计,通过空格作为词频切分,简单统计了哈姆雷特节选的词频数量。
recommend-type

python 文本单词提取和词频统计的实例

今天小编就为大家分享一篇python 文本单词提取和词频统计的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
recommend-type

大数据技术实践——Spark词频统计

利用Spark组件完成文本词频统计的任务,目标是学习Scala语言,理解Spark编程思想,基于Spark 思想,使用IDEA编写SparkWordCount程序,并能够在spark-shell中执行代码和分析执行过程。
recommend-type

STC89C51 简单时钟

STC89C51 简单时钟,叫你从基础开始学习单片机,
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

MATLAB归一化方法大比拼:5种方法,哪种最适合你的数据?

![MATLAB归一化方法大比拼:5种方法,哪种最适合你的数据?](https://www.finebi.com/wp-content/uploads/2019/11/FineBI%E8%A1%8C%E4%B8%9A%E9%A9%BE%E9%A9%B6%E8%88%B1-1024x510.png) # 1. MATLAB归一化概述 归一化是一种数据预处理技术,用于将数据缩放到特定范围内,从而消除不同特征之间的尺度差异。在MATLAB中,有各种归一化方法可用于不同类型的数据和应用程序。 归一化的主要目的是: - 提高模型的训练效率和准确性,通过消除特征之间的尺度差异,使模型能够更有效地学习
recommend-type

failed to register layer: ApplyLayer exit status 1 stdout: stderr: archive/tar: invalid tar header

很抱歉听到这个问题。这个错误通常是由于Docker镜像损坏或Docker存储库中缺少所需的图层引起的。您可以尝试以下几种方法来解决这个问题: 1. 清理Docker镜像和容器:使用命令“docker system prune”清理不再使用的Docker对象。 2. 检查Docker存储库:确保您正在使用可靠的Docker存储库,并检查是否存在所有必需的图层。 3. 重新下载Docker镜像:如果您确定问题是由于损坏的Docker镜像引起的,则可以尝试重新下载Docker镜像。 4. 更新Docker版本:如果您使用的是旧版Docker,则可能会出现此问题。尝试更新到最新版本的Docke
recommend-type

Linux系统常用操作命令大全手册

附件是Linux系统常用操作命令大全手册,是 markdown格式,其中覆盖了Linux系统管理、文件操作、网络配置等多个方面,都是日常工作中非常常用的命令,欢迎大家下载学习使用!