美文网首页我爱编程
【python词云】豆瓣小组成员昵称词云

【python词云】豆瓣小组成员昵称词云

作者: GaGLee | 来源:发表于2018-04-08 23:05 被阅读0次

关于我们

作者:python爱好者、自学ing
个人网站 :到哪儿找导航 欢迎访问!
联系交流:QQ群726693257

背景说明

本篇文章是上一篇【python爬虫】豆瓣小组成员列表信息的后续数据分析处理篇。
数据来源:豆瓣小组成员信息
核心模块:python-wordcloud
运行环境:Anaconda python3.6

安装

说明:wordcloud不是python3和anaconda的默认模块,需要自行安装
step1:

pip install worldcloud

失败……官方源
step2:

conda install worldcloud

失败……清华镜像源

step3:

cd desktop
conda install word_cloud-master.zip

安装进行……突然decode解码错误,无视。
step4:
搜索worldcloud官网,找官方下载包。发现刚才那个Github地址就是唯一的官方地址。

  • 看看说明:
If you are using conda, you can install from the conda-forge channel:

conda install -c conda-forge wordcloud

满足条件,试了试,确实可以安装,但下载速度太慢……放弃了

  • 再找发现:
##### Windows

If you're having trouble with pip installation on windows, you can find a .whl file at:

[http://www.lfd.uci.edu/~gohlke/pythonlibs/#wordcloud](http://www.lfd.uci.edu/~gohlke/pythonlibs/#wordcloud)

进入这个地址,下载wordcloud‑1.4.1‑cp36‑cp36m‑win_amd64.whl

pip install wordcloud‑1.4.1‑cp36‑cp36m‑win_amd64.whl

没报错!

pip list

已经有了wordcloud‑1.4.1,安装成功!
临时笔记:找到一个对pip、conda的解释,先码再看。Conda:误解与迷思

词云生成

初识源数据

此次数据是从豆瓣某读书小组爬取的成员名单,仅爬取了600+人。


源数据概览

目的也很简单,生成该读书小组成员的昵称词云

代码

  • 文件读取
   p = Path(r'C:\Users\****\Desktop\scrapy\douban_group\douban_group_names.xls')
   print("--" * 50)
   print("找到根目录:", str(p))
   data_df = pd.read_excel(str(p), usecols=["names"])

----固执地沿用pathlib文件路径+pandas方法读取文件,推荐大家还是用with open() as
----wordcloud的data数据文件必须为str型,不能是list,下面需要将pandas读取的数据转换为一个超长的str

  • 数据转换+分词
    data = ""
    for i in data_df.names:  #data_df是dataframe,data_df.names是series
        data = data + str(i) #将names转换为str
        data_jieba = jieba.cut(data, cut_all=False)  # 使用jieba模块进行分词处理
        data_space = ' '.join(data_jieba)

----这里用jieba进行分词处理

  • 生成词云
font = "C:\Windows\Fonts\FZSTK.TTF"
    # wordcloud不支持中文字体,需要自行从C盘找一个中文字体文件
    mask = imread("D:\我的照片,my life\敦煌.png")
    # 指定背景图片,
    wordcloud = WordCloud(
        background_color='white',
        mask=mask,  # 该如果参数为空,则使用二维遮罩绘制词云。如果 mask有值,设置的宽高值将被忽略,背景图片的画布一定要设置为白色(#FFFFFF),然后显示的形状为不是白色的其他颜色。
        font_path=font,
        # max_words=2000,  #要显示的词的最大个数
        max_font_size=500,  # 显示的最大字体大小
        # relative_scaling: float# 词频和字体大小的关联性,(default=.5)
        # colormap: string or matplotlib colormap, default =”viridis”#给每个单词随机分配颜色,若指定color_func,则忽略该方法。
        width=100,
        # height=400,
        # prefer_horizontal: float(default=0.90), /  # 词语水平方向排版出现的频率,默认0.9(所以词语垂直方向排版出现频率为0.1
        # scale: float(default=1)  # 按照比例进行放大画布,如设置为1.5,则长和宽都是原来画布的1.5    倍。
        stopwords="各位代表"  # 设置需要屏蔽的词
        # fit_words(frequencies) #根据词频生成词云
        # to_file(filename) #输出到文件

    ).generate(data)  # generate(text) #根据文本生成词云

----1)必须从本地电脑引用中文字体;
----2)max_font_size的值越大,越有层次。


词云

(00.00) 看来这个豆瓣小组萌妹子居多…………

参考

Python wordcloud之中文词云
Windows环境下Python中wordcloud的使用——自己踩过的坑 2017.08.08
利用jieba和wordcloud生成词云

相关文章

  • 【python词云】豆瓣小组成员昵称词云

    关于我们 作者:python爱好者、自学ing个人网站 :到哪儿找导航 欢迎访问!联系交流:QQ群72669325...

  • Python词云

    很少记录自己的学习历程,无奈太健忘,而且刚入手Python,还是写下来供以后参考和思考。 本篇主要利用python...

  • python 词云

    最近由于大屏项目需要生成一个词云所以这边做个记录demo.py下: chnSegment.py下 这边主要对文章进...

  • 词云

    以前总看到豆瓣知乎上各种晒词云的图片,乍一看高大上,于是今天潜心研究了一下python词云的几个库:wordclo...

  • python 基于 wordcloud + jieba + ma

    词云## 词云是啥?词云突出一个数据可视化,酷炫。以前以为很复杂,不想python已经有成熟的工具来做词云。而我们...

  • 《长恨歌》词云

    词云展示 Python代码 TEXT原文

  • Python 绘制词云

    1. 准备 安装好python,安装时包含pip 包管理工具 pip install jieba pip inst...

  • python-词云

    1、写词云的思路:数据采集-分词-生成词云 2、用到的模块:wordcloud。如果没有这个模块,cmd进入pyt...

  • python 词云生成

    背景 最近在研究一些深度学习序列模型,比如RNN和LSTM,这种主要来处理时序数据的神经网络。传统的语言模型主要是...

  • Python分词、词云

    使用Python的结巴分词,但是排除一些词的代码好像运行没生效,可能是dataframe里面的一些方法没掌握,用了...

网友评论

    本文标题:【python词云】豆瓣小组成员昵称词云

    本文链接:https://www.haomeiwen.com/subject/vhvmhftx.html