词频统计就是输入一段句子或者一篇文章,然后统计句子中每个单词出现的次数。那在python中怎样怎样统计词频出现的次数呢?
之前学习过python字典的使用方法:

Python熟练使用字典和了解元组与列表的区别
字典是Python中存储数据的一种方式,Python字典中可以用keys()命令获取一个字典中的所有的键。而元组是存放多个数据的容器,和列表很像。
字典的get()函数
字典的get()函数返回指定键对应的值。
get()函数使用格式
字典名.get(key) //字典中存在键key 返回键对应的值
字典名.get(key, value) //字典中不存在键key 返回设定的值value
py
info = {'苹果':1, '梨':2}
a = info.get('苹果')
print(a)
输出
1
py
info = {'苹果':1, '梨':2}
a = info.get('草莓',3)
print(a)
输出
3
‘草莓’不是字典info中的键,则get()函数返回,第2个参数设定的值,即3。
词频统计
词频
使用字典存储词语: 词频 这一组数据。
遍历存储词语的列表,如果词语在字典中,就在之前出现的次数上增加1。否则,就把词语添加到字典中。
py
counts = {}
for w in words:
if w in counts: //如果w在字典counts中
counts[w] = counts[w] + 1 //在之前的次数加1
else:
counts[w] = 1 //把词语添加到字典中,并计数1次
print(counts)
words是存储被统计的词语列表。
counts是用于存储统计结果的字典,键是词语,值是词频。
词频统计的简化
使用字典的get()函数,当w键不存在时,返回设定的值0,存在时返回w键对应的值。
py
counts = {}
for w in words:
c= counts.get(w,0) //w不在counts中,返回0; 存在,返回w对应的值。
counts[w] = c + 1
print(counts)
字典中的最大值
遍历字典,判断键对应的值和m的大小,如果值比m大,就让m等于当前值,循环结束,m存储的就是字典的最大值了。
py
m = 0
k = 0
for c in counts:
if counts[c] > m:
m = counts[c]
k = c
print(k, counts[k])
求字典的最大值和列表的最大值的思路是一样的,都是循环比较。
不过字典遍历的是键,需要由键访问值再进行比较。
本文最后更新于2022年7月25日,已超过 2 年没有更新,如果文章内容或图片资源失效,请留言反馈,我们会及时处理,谢谢!
那年 • 今日
暂无评论