其他
来!左边跟我一起画个龙在你右边画一道彩虹~
本文作者:钱梦璇
文字编辑:孙晓玲
技术总编:张 邯
爬虫俱乐部将于2020年1月5日至11日在湖北武汉举行为期一周的Stata编程技术定制培训,此次采取初级班和高级班分批次培训。课程通过案例教学模式,旨在帮助大家在短期内掌握Stata软件编程、金融计量知识和实证分析方法,使大家熟悉Stata核心的爬虫技术,以及Stata与其他软件交互的高端技术。目前正在火热招生中~详细培训大纲及报名方式,请点击《爬虫俱乐部2020第一期Stata编程训练营开始报名啦!》或点击文末阅读原文呦~
import re #正则表达式模块
from collections import Counter #Counter是一个简单的计数器
import jieba #中文分词库
with open('stopwords.txt',encoding='UTF-8') as f:
stop_words=[i.strip() for i in f.readlines()]
words=[]
with open('野狼disco.txt',encoding='utf8') as comments:
for line in comments:
line=line.strip()
#过滤数字、字母和一些其他的干扰字符
line=re.sub(r'[0-9A-Za-z.【】、一。,!~\*]','',line)
line=jieba.lcut(line)
#过滤长度为1的词
line=filter(lambda word:len(word)>1,line)
#过滤停用词
if line not in stop_words:
words.extend(line)
print(words)
分词结果如下所示:
topfreq_words=Counter(words).most_common(100)
print(topfreq_words)
Counter计数器中的most_common()函数统计了单词出现的次数,函数参数100表明打印次数排名为前100的单词。如下所示:
from pyecharts import options as opts
from pyecharts.charts import WordCloud
#封装函数
def Word_Cloud():
wordcloud=(
WordCloud()
.add("", topfreq_words, word_size_range=[15, 105],shape='circle')
.set_global_opts(title_opts=opts.TitleOpts(title="野狼disco-词云图",subtitle="b站评论"))
)
return wordcloud
Word_Cloud().render('E:\野狼disco-词云图.html')
add中的word_size_range表示词语的大小范围,shape定义了词云图的形状,这里选择“circle”类型。
“气功”研究哪家强
数据长、宽整型之另辟蹊径
10分钟带你走进宝藏数据库BvD
给你一个贴心的reshape应用
关于我们
微信公众号“Stata and Python数据分析”分享实用的stata、python等软件的数据处理知识,欢迎转载、打赏。我们是由李春涛教授领导下的研究生及本科生组成的大数据处理和分析团队。
1)必须原创,禁止抄袭;
2)必须准确,详细,有例子,有截图;
注意事项:
1)所有投稿都会经过本公众号运营团队成员的审核,审核通过才可录用,一经录用,会在该推文里为作者署名,并有赏金分成。
2)邮件请注明投稿,邮件名称为“投稿+推文名称”。
3)应广大读者要求,现开通有偿问答服务,如果大家遇到有关数据处理、分析等问题,可以在公众号中提出,只需支付少量赏金,我们会在后期的推文里给予解答。