1.英文词频统
下载一首英文的歌词或文章
将所有,.?!’:等分隔符全部替换为空格
将所有大写转换为小写
生成单词列表
生成词频统计
排序
排除语法型词汇,代词、冠词、连词
输出词频最大TOP20
将分析对象存为utf-8编码的文件,通过文件读取的方式获得词频分析内容。
file=open('Closer.txt','r') news=file.read() file.close() sep=''',.?!":()''' for i in sep: news=news.replace(i, ' ') wordList=news.lower().split() wordDict={} wordSet=set(wordList) wordCutSet={'i','we','the','you','of','in','and','that'} wordSet=wordSet-wordCutSet # #统计词频法一 # for w in wordList: # wordDict[w]=wordDict.get(w,0)+1 #统计词频法二 for w in wordSet: wordDict[w]=wordList.count(w) sortWord=sorted(wordDict.items(),key=lambda e:e[1],reverse=True) save=open('C:/Users/Administrator/PycharmProjects/bd/save.txt','w',encoding='UTF-8') save.write("烟鬼Closer歌曲词频统计\n") for w in range(20): save.write(str(sortWord[w])+"\n") save.close()
2.中文词频统计
下载一长篇中文文章。
从文件读取待分析文本。
news = open('gzccnews.txt','r',encoding = 'utf-8')
安装与使用jieba进行中文分词。
pip install jieba
import jieba
list(jieba.lcut(news))
生成词频统计
排序
排除语法型词汇,代词、冠词、连词
输出词频最大TOP20(或把结果存放到文件里)
将代码与运行结果截图发布在博客上。
import jieba text=open('明朝那些事.txt','r',encoding='GBK') word=text.read() text.close() wordDict={} wordList=list(jieba.cut(word)) wordSet=set(wordList) wordCutSet={',','的','。','\n',' ','了','他','\u3000','是','也','人','一个'} wordSet=wordSet-wordCutSet for w in wordSet: wordDict[w]=wordList.count(w) sortWord=sorted(wordDict.items(),key=lambda e:e[1],reverse=True) for w in range(20): print(sortWord[w])