码迷,mamicode.com
首页 > 其他好文 > 详细

综合练习:词频统计

时间:2018-03-26 21:32:33      阅读:203      评论:0      收藏:0      [点我收藏+]

标签:div   nbsp   int   count   ever   词频统计   内容   rev   综合   

下载一首英文的歌词或文章

将所有,.?!’:等分隔符全部替换为空格

将所有大写转换为小写

生成单词列表

f=open(news.txt,r)
news=f.read()
f.close()
sep=‘‘‘,.!"?:‘‘‘
for c in sep:
   news=news.replace(c, )
   wordList=news.lower().split()

for w in wordList:
      print(w)

技术分享图片

生成词频统计

f=open(news.txt,r)
news=f.read()
f.close()
sep=‘‘‘,.!"?:‘‘‘
for c in sep:
   news=news.replace(c, )
   wordList=news.lower().split()
wordDict={}
wordSet=set(wordList)
for w in wordSet:
    wordDict[w]=wordList.count(w)
for w in wordDict:
      print(w,wordDict[w])

技术分享图片

排除语法型词汇,代词、冠词、连词

f=open(news.txt,r)
news=f.read()
f.close()
sep=‘‘‘,.!"?:‘‘‘
exclude={be,i,so,over,hearing}
for c in sep:
   news=news.replace(c, )
   wordList=news.lower().split()
wordDict={}
wordSet=set(wordList)-exclude
for w in wordSet:
    wordDict[w]=wordList.count(w)
for w in wordDict:
      print(w,wordDict[w])

技术分享图片

排序、输出词频最大TOP20

f=open(‘news.txt‘,‘r‘)
news=f.read()
f.close()
sep=‘‘‘,.‘!"?:‘‘‘
exclude={‘be‘,‘i‘,‘so‘,‘over‘,‘hearing‘}
for c in sep:
news=news.replace(c,‘ ‘)
wordList=news.lower().split()
wordDict={}
wordSet=set(wordList)-exclude
for w in wordSet:
wordDict[w]=wordList.count(w)

dic=sorted(wordDict.items(),key=lambda d:d[1],reverse=True)
print(dic)
for i in range(20):
print(dic[i])

技术分享图片

将分析对象存为utf-8编码的文件,通过文件读取的方式获得词频分析内容。

f=open(news.txt,r)
text=f.read()
f.close()
print(text)

技术分享图片

 

 


 

综合练习:词频统计

标签:div   nbsp   int   count   ever   词频统计   内容   rev   综合   

原文地址:https://www.cnblogs.com/qq8675/p/8653829.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!