专栏名称: 马哥Linux运维
马哥linux致力于linux运维培训,连续多年排名第一,订阅者可免费获得学习机会和相关Linux独家实战资料!
目录
相关文章推荐
InfoQ架构头条  ·  Safe C++提案能复制Rust的内存安全性吗? ·  4 天前  
51好读  ›  专栏  ›  马哥Linux运维

Python数据挖掘:WordCloud词云配置过程及词频分析

马哥Linux运维  · 公众号  · 运维  · 2017-04-09 10:42

正文

        豌豆贴心提醒,本文阅读时间5分钟


    这篇文章是学习了老曹的微信直播,感觉WordCloud对我的《Python数据挖掘课程》非常有帮助,希望这篇基础文章对你有所帮助,同时自己也是词云的初学者,强烈推荐老曹的博客供大家学习。如果文章中存在不足或错误的地方,还请海涵~


一. 安装WordCloud


        在使用WordCloud词云之前,需要使用pip安装相应的包。
     

  pip install WordCloud     

  pip install jieba


        其中WordCloud是词云,jieba是结巴分词工具。
        问题:在安装WordCloud过程中,你可能遇到的第一个错误如下。
       

error: Microsoft Visual C++ 9.0 is required. Get it from http://asa.ms/vcpython27



        解决方法也很简单,下载VCForPython27安装(Microsoft Visual C++ Compiler for Python 2.7)。但是在微软下载总是没响应。
        这是最大的问题,下面我自己提供一个CSDN的地址供大家下载。下载完成,可以进行安装响应的库函数。
        资源地址:http://download.csdn.net/detail/eastmount/9788218





        安装完成之后,可以正常运行代码啦。


二. 简单词云代码


        下面这部分代码参考老曹的,希望对你有所帮助。
        老曹说:什么是词云呢?词云又叫文字云,是对文本数据中出现频率较高的“关键词”在视觉上的突出呈现,形成关键词的渲染形成类似云一样的彩色图片,从而一眼就可以领略文本数据的主要表达意思。
        代码如下:

        运行结果如下所示:



        这是中文编码问题,下面讲解解决方法。

三. 中文编码错误及解决


        在WordCloud安装的目录下找到WordCloud.py文件,对源码进行修改。

        编辑wordcloud.py,找到FONT_PATH,将DroidSansMono.ttf修改成msyh.ttf。这个msyh.ttf表示微软雅黑中文字体。




        注意,此时运行代码还是报错,因为需要在同一个目录下放置msyh.ttf字体文件供程序调用,如下图所示,这是原来的字体DroidSansMono.ttf。


        此时的运行结果如下所示,这是分析CSDN多篇博客的主题,"阅读"和"评论"比较多。



        也可以采用下面的代码:
       

 wordcloud = WordCloud(font_path = 'MSYH.TTF').fit_words(word)


四. 照片背景的词云代码


        下面进一步深入,假设存在一个图 "sss3.png",核心代码如下:


        运行结果如下图所示,显示我和宝宝我俩最近两月的聊天记录。

  



       一弦一柱思华年,一co一ding梦严贤。
       希望文章对你有所帮助,尤其是结合数据库做数据分析的人。还是那句话,如果刚好需要这部分知识,你就会觉得非常有帮助,否则只是觉得好玩,这也是在线笔记的作用。如果文章中存在不足或错误的地方,还请海涵~

        (By:Eastmount 2017-03-21 下午2点  http://blog.csdn.net/eastmount/ )


今日值班老师



马哥教育一号女神老师,懂IT更懂IT男。
专注解决Linux技术难题,是天生的技术专家。
如果你正好遇到了问题,为什么不找她求助一下?

豌豆

Linux面授班,报名优惠400元,只有10个名额