课程作业——综合练习:英文词频统计

python英文文本词频统计,python英文文章词频统计 这篇文章主要介绍了利用python进行英文词频统计,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获,下面让小编带着大家一起了解一下。词频统计是自然语言处理的基本任务,针对一段句子、一篇文章或一组文章,统计文章中每个单词出现的次数,在此基础上发现文章的主题词、热词。 阅读详情

我在统计词频的过程中是使用了amazing grace的歌词,歌词大致如下:

Amazing Grace, how sweet the sound,
That saved a wretch like me....
I once was lost but now am found,
Was blind, but now, I see.

T'was Grace that taught...
my heart to fear.
And Grace, my fears relieved.
How precious did that Grace appear...
the hour I first believed.

Through many dangers, toils and snares...
we have already come.
T'was Grace that brought us safe thus far...
and Grace will lead us home.

The Lord has promised good to me...
His word my hope secures.
He will my shield and portion be...
as long as life endures.

When we've been here ten thousand years...
bright shining as the sun.
We've no less days to sing God's praise...
then when we've first begun.

Amazing Grace, how sweet the sound,
That saved a wretch like me....
I once was lost but now am found,
Was blind, but now, I see.

我将上面的歌词放入一个lyric.txt的文件中,现在就可以进行代码编写,代码如下:

file = open('lyric.txt', 'r')  # 只读打开文件
lyrics = file.read()  # 读取文件内容
file.close()  # 关闭文件资源
lyrics = lyrics.lower()  # 设置内容全部小写

# 将内容中的连词,冠词等去掉
lyrics = lyrics.replace('the', '').replace('was', 'wes').replace('as', '').replace('wes', 'was').replace('but', '') \
    .replace('that', '').replace('and', ' ').replace('to', ' ').replace("we've", 'we').replace("we're", 'we')
lyrics = lyrics.replace(',', ' ').replace('.', ' ')
# print(lyrics)
# print('-' * 100)

lyricsWordList = lyrics.split()  # 将歌词全部转为单个单词为元素的list
lyricsWordSet = set(lyricsWordList)  # 将list转为set,可以将重复元素去掉
# print(lyricsWordList)
# print('-' * 100)
# print(lyricsWordSet)
# print('-' * 100)
lyricsDict = {}  # 初始化歌词字典
# 遍历歌词set(因为set的key不重复,所以使用key作为统计基准)
for word in lyricsWordSet:
    lyricsDict[word] = lyricsWordList.count(word)  # 字典的key使用set的key,value使用list中统计的出现个数
# print(lyricsDict)
# print('-' * 100)
lyricsWordListSort = sorted(lyricsDict.items(), key=lambda d: d[1], reverse=True)  # 将字典中的各个点变成排序完成的list
# print(lyricsWordListSort)
# print('-' * 100)

# 打印前十最高词频
for i in range(10):
    if i > len(lyricsWordListSort):
        break
    print(lyricsWordListSort[i])


# 打印结果:
# ('grace', 7)
# ('i', 5)
# ('was', 4)
# ('we', 4)
# ('my', 4)
# ('now', 4)
# ('me', 3)
# ('how', 3)
# ('amazing', 2)
# ('sound', 2)


以上的代码中给出了大量的注释,如果有出现纰漏,请多多交流,可以邮箱联系。

参考链接
排序:https://www.cnblogs.com/timtike/p/6562402.html
文件操作:http://www.jb51.net/article/87398.htm
Python3基础:http://www.runoob.com/python3/python3-tutorial.html

使用Python+NLTK实现英文单词词频统计 使用Python+NLTK实现英文单词词频统计使用PythonNLTK实现英文单词词频统计 应用场景 Fork Me 参考运行环境 流程步骤图 详细步骤 读取文件 过滤特殊符号以及还原常见缩写单词 分词 词形还原 NLTK 单词的TAG 词形还原 统计词频 结果写入文件应用场景本人近来想要提高英语水平,决定从直接看英文书籍开始做起,在选择英文书的时候,我需要了解这本书的词汇量以及词频,这样在遇到生词 阅读详情

相关推荐

中英文分词后进行词频统计(包含词云制作)

文章目录1、英文词频统计和词云制作2、中文词频统计和词云制作2.1 错误发现2.2 错误改正  在之前的分词学习后,开始处理提取的词语进行词频统计,因为依据词频是进行关键词提取的最简单方法: 1、英文词频统计和词云制作 from nltk import word_tokenize #分词处理 from nltk.corpus import stopwords #停用词 from nltk im...

sk_berry的博客 5475

Python——组合数据类型的应用_1.英文句子中的词频统计

词频统计需要考虑下列几个问题: 英文单词的分隔符可以是空格、标点符号或者特殊符号,使用字符串的 replace()方法可以将标点符号替换为空格,以提高获取单词的准确性。 用 split()函数可以拆分字符串,生成单词的列表。 逐个读取列表中的单词,并重复下面的操作。如果字典 map1的 key 值中没有这个单词,向字典中添加元素,关键字是这个单词,值是1,即 map1 [ word ]=1;如果字典的 key 值中有这个单词,则该单词计数加1,即 map1 [ word ]=1;当列表中的单词全部读取完后

XQC_KKK的博客 2050

Python中英文词频统计

Python中英文词频统计的简单使用方法

芊樱烛渊的博客 6580

任务8、词频统计

思路:读取文件,通过拆分得到单词数组,定义一个哈希映射保存词频统计结果,遍历单词数组,如果第一次遇到某个单词,就在哈希映射里添加一个元素,单词为键,1为值;如果不是第一次遇到,那么在哈希映射里找到该键,将其值加1…… (一)编程实现 在项目根目录里创建单词文本文件 - words.txt 在里创建子包,在子包里创建类 读取文件所有行 - 运行结果: 将文件行按空格拆分成单词数组 程序运行结果: 针对每行单词数组进行词频统计 按指定格式输出词频统计结果 利用Python的绘图库来绘制词频统计的直方图 查

qq_67308048的博客 405

统计词频

统计词频 1、方法1 import jieba import re text = ['今晚19:30《天下足球》直播互动话题:国家德比,巴萨取胜的关键之处?欢迎积极留言,我们将选择您的精彩留言与全国观众分享。', '德甲前四捉对厮杀,“罗贝里”复活拜仁大胜、门兴多特平分秋色。', '今晚《天下足球》19:30,直播内容:专题《欧洲杯豪门恩怨》;专题《名人堂:苏格拉...

weixin_44766179的博客 9097

java大作业之词频统计

开发工具idea,统计方式为java8的stream方式,不是传统的字节流统计方式,内含答辩PPT以及统计单词的文本,配置好后可直接使用

【干货】Python:中英文词频统计

Python中英文词频统计

大家好,欢迎来到鱼尾的博客! 1万+

postgresql 数据库 timescaledb 函数time_bucket_gapfill()报错解决及更换 license

最近在工作中使用postgresql 和 timescaledb 的time_bucket_gapfill()函数 报错,让更换license,在网上找了一大圈,没有找到,最后解决了这个问题,这篇文章记录我的解决办法查看timescaledb.license参数命令:show timescaledb.license;修改命令: 结果不行,报错如下:lter system set timescaledb.license=‘timescale’;那只能换包了如果出现上面那种情况,那我们只能先从官网上下载带 '

yang_z_1的博客 3249

使用python统计英文歌中的单词出现频率,并按出现频率排序

比如统计下面英文歌中每个单词出现的频率(不区分大小写) 使用lower(),replace()方法将所有字母变为小写字母,去除其中多余的符号; 使用split()方法将每个单词分隔开(通过判断单词之间是否存在空格) 定义一个空字典 循环判断每个单词是否出现在空数组中,如果不存在则把单词放入,并将单词出现频率的值加一 最后通过内部sorted方法,按照单词出现频率次数大小,顺序输出。 代码如下: 实现效果: ...

weixin_45934119的博客 3875

别再浪费主板上的PCIE插槽了!手把手教你用VL805芯片打造高速USB3.0扩展坞

本文详细介绍了如何利用VL805芯片将主板闲置的PCIE插槽改造为高性能USB3.0扩展坞。从芯片选型、电路设计到焊接工艺和系统调试,提供了一套完整的实战指南,帮助用户充分释放硬件潜能,实现高达5Gbps的传输速度。

weixin_27134495的博客 327

【实战案例】IBM V3500存储控制器故障诊断与更换全流程解析

本文详细解析了IBM Storwize V3500存储控制器发生故障后的完整处理流程。通过还原真实故障现场,介绍了如何利用服务助手精准定位缓存模块损坏的根源,并逐步指导完成控制器备件准备、核心部件移植更换、系统上线同步及全面功能验证的全过程,为存储运维人员提供了一份实用的实战指南。

weixin_29269441的博客 549

使用Python进行英文词频统计

对一篇英文文章进行词频统计重点在于内容去噪和归一化,可用split()进行分词。本文以《飘》为例,统计词频最高的前十位。 1.读取文件,通过lower()、replace()函数将所有单词统一为小写,并用空格替换特殊字符。 def gettext(): txt = open("piao.txt","r",errors='ignore').read() txt = txt.lower...

aieraisiji的博客 2万+

从摄像头选型到PCB布线:搞懂MIPI CSI带宽计算,避免你的嵌入式项目翻车

本文详细解析了MIPI CSI带宽计算在嵌入式项目中的关键作用,从摄像头选型到PCB布线提供全流程指导。通过实际案例和计算公式,帮助工程师准确计算带宽需求,避免图像丢帧和系统崩溃问题,同时优化PCB设计确保信号完整性。

weixin_30533109的博客 376

python之词频统计

中文、英文词频统计。英文有空格或者标点符号分隔,中文单词之间缺少分词符,需要用分词函数

weixin_54958866的博客 1万+

Qt C++ 实现一个完整的扫雷

mineCountLabel = new QLabel(QString("地雷: %1").arg(remainingMines, 3, 10, QChar('0')), this);mineCountLabel->setText(QString("地雷: %1").arg(remainingMines, 3, 10, QChar('0')));timeLabel->setText(QString("时间: %1").arg(gameTime, 3, 10, QChar('0')));" : "游戏失败!

寒寒豆豆软件公司的博客 107

【异常】安装OpenClaw遇到 Windows环境pnpm安装node-llama-cpp postinstall生命周期脚本执行失败完整解决方案

摘要: Windows环境下使用pnpm安装node-llama-cpp时,postinstall脚本执行失败(错误码3221225477),主要因缺少C++编译工具链或预构建二进制下载失败。解决方案: 基础排查:确保管理员权限、Node.js ≥18、路径无中文; 安装编译工具:推荐Visual Studio的“C++桌面开发”组件或windows-build-tools; 环境变量配置:强制CPU模式+国内镜像(NODE_LLAMA_CPP_FORCE_CPU=true,镜像地址替换为国内源); pnp

奶爸的编程之路,也就一周冷个三天 619

python英文词频统计jieba库,python英文词频统计代码

这篇文章主要介绍了python英文词频统计并按顺序输出,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获,下面让小编带着大家一起了解一下。词频统计是自然语言处理的基本任务,针对一段句子、一篇文章或一组文章,统计文章中每个单词出现的次数,在此基础上发现文章的主题词、热词。

YYmmsss的博客 1264

【Unity 实用工具篇】| Unity中 实现背景模糊效果,简单易用

背景模糊 是一个很实用的功能,它可以帮助游戏在视觉上有更好的专注力和表现力。 实现模糊的种类和方式有很多种,大家自行选择适合自己的就可以了。 下面一起来看下本文实现背景模糊的效果和使用方式吧!

努力前行,总会成为自己心中的那道光 4万+

Python——词频统计(英文+中文)

首先这里打开文件的时候要注意文件的编码问题!!! 英文的词频统计: 这里需要把《哈莫雷特》中出现的次数最多的单词(前十)打印出来 在英文中,不同的单词都是有明显的分隔的,有的是以空格分隔,有的是以逗号分隔...... 这里我们需要把不同的单词分隔出来,所以我们要把所有可以用来分隔单词的符号都转换成空格,这样我们在分隔不同的单词的时候就只需要按空格分隔就可以了。 另外,单词有的是大写,有...

red_red_red的博客 8031

13、深入理解 Microsoft 365 的安全与合规概念

本文深入探讨了 Microsoft 365 的安全与合规概念,涵盖文档存储、文件共享、审计、保留、eDiscovery、分类和保护以及网络等多个关键方面。通过合理配置这些功能,组织可以更好地管理和保护其数据资源,满足法规要求,并提升工作效率。文章还提供了最佳实践建议及流程图,帮助读者全面理解 Microsoft 365 的安全架构和管理策略。

k8s6orchestrator的博客 211

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

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

今天继续给大家介绍Python相关知识,本文主要内容是Python英文词频统计程序示例,主要是对英文文本——《哈姆雷特》进行分词。 一、英文文本词频统计思路 二、英文文本词频统计程序编写 三、程序执行结果展示

永远是少年 1万+

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

综合练习:英文词频统计

综合练习:英文词频统计 下载一首英文的歌词或文章 sing = ''' i'm just a little bit caught in the middle life is a maze and love is a riddle i don't know where to go can't do it alone i've tried but i don't k...

dieqi0853的博客 240

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

上一篇: 课程作业——字符串、组合数据类型练习
下一篇: 关于Maven的配置与学习
lger_Pro
博客等级 码龄10年 44粉丝 48原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值