Python小题目10:条件控制之文本归一化处理并写入CSV文件

使用Python的jieba库对红楼梦.txt文本进行分词,排除停用词,进行归一化处理,统计出场次数不少于40次的人物名称,并按降序写入CSV文件。
摘要由CSDN通过智能技术生成

设存在文本文件“红楼梦.txt”中包含了《红楼梦》小说前20章的内容,又存在“消除词”文件,里面包含了不需要统计的词语,即需要排除的词语。

在本题中,有如下名字需要归一:

 

要求统计出厂次数不少于40次的人物名称,将人物名称及其出出场次数按照递减排序写入csv文件中。


前言

在许多小说中,存在很多人名的别称,如“孙悟空”、“孙行者”、“泼猴”、“孙大圣”,都是同一个人,那么在统计孙悟空在文本中出现的词语,则需要对这些词进行“归一化”处理,将这些名字都指定为一个名字,方便统计。

一、思路

1.本题比较繁琐的是需要首先读取文件(源文本文件与“停用词”文件),然后分词,再与“停用词”对比,剔除文本内的所有停用词。

2.循环结构进行统计各个名字,存入变量。

3.条件控制结构进行名字归一化处理,利用get函数进行统计。

4.将统计出的词频进行排序然后列出词频超过40的结果。

二、步骤

1.读取文章内容用jieba库分词

代码如下(示例):

import jieba

f = "红楼梦.txt"
sf = "停用词.txt"
#读取文章内容用jieba库分词
txt=jieba.lcut(open(f,'r',encoding='utf-8').read())

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一个兴趣使然的程序猿罢了

有钱的捧个人场,没钱的想想办法

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值