一、python与其他语言的区别

1.python作为一门解释性语言,与java、C等语言相比,第一个特点就是python不用编译,可以像脚本一样直接运行。前几天咱们工作室有同学问我,他的编程界面为什么跟别人的不一样,是因为他使用的是shell,而别人使用的是IDE。python有四种运行方式,第一种是通过python自带的IDLE,利用shell命令行提示符,输入后按回车就会有输出,是交互式的;如:

第二种是以脚本方式运行,写好python脚本后,在py脚本所在目录下输入python hello.py即可执行,如:

第三种方式是直接在命令提示符下运行,输入python,回车就进入python环境 ,这种方式跟第一种差不多,如果要退出使用Ctrl+Z,然后回车;

第四种是直接使用python的IDE,推荐使用的是pycharm。

2.python不同与其他语言的第二个特点是用缩进来区分语句块,而不是用{},所以编程习惯不好的同学在这里就会吃亏了;

3.python目前有两个版本,Python2和python3,两个版本除了语法有不同之外,还有很大的区别;你要问我学习哪个版本比较好,我只能说对于新手来说想学数据分析最好用2,学姐就吃过苦头啦,因为python3不兼容很多2 的库,并且很多数据分析的包还没有,据悉,python2至少到2020年还不会消失,可以学2入门,再转到3也不迟;我一个小白就不在这里装大佬啦,给大家提供一个学习python的网址:菜鸟教程,大家可以先在这里学再转到数据分析;

4.python的最大特点,它具有强大的大三方库,也就是说,很多东西不需要你编写,别人已经替你写好啦,你就只需要下载,导入,调用就行了,这也是为什么现在python这么流行的原因之一。

好,说了这么多终于可以进入我们的词频分析啦,在分析之前先介绍一下环境,安装我们今天例子所需要的包

二、环境介绍

1.想学数据分析必须要了解Anaconda,Anaconda(官方网站)就是可以便捷获取包且对包能够进行管理,同时对环境可以统一管理的发行版本。Anaconda包含了conda,numpy,scipy在内的超过180个科学包及其依赖项。由于python2和python3不兼容的问题,环境的管理变得尤为重要,大家作为初学者先不用安装anaconda,用不到1000多个库,毕竟要占几G的空间,但必须要了解 。

2.pip:用于安装和管理软件包的包管理器,请确保你的环境中有pip,执行python --version查看,如没有,windows环境下需要下载,下载地址:https://pypi.python.org/pypi/pip#downloads ,下载解压后,进入到解压目录,执行如下命令:

python setup.py install

如果下载安装后执行python --version报错,则需要配环境变量。

3.pip装好后就可以安装其他的科学包啦,我们今天用到的第一个包:wordcloud,用它可以将文本中的关键词进行总结,并根据出现的频率生成词云 ,安装命令如下:

pip install wordcloud

在安装的过程中已经自动地帮我们把 大名鼎鼎的matplotlib和numpy装好啦,如图:

可能有些同学安装的过程中会报错,这时候你需要在https://www.lfd.uci.edu/~gohlke/pythonlibs/#wordcloud根据你电脑系统下载,如果是32位系统,下载后输入命令: pip install wordcloud‑1.4.1‑cp36‑cp36m‑win32.whl

4.jieba:中文分词工具,因为中文不像英文那样用空格可以区分单词,用jieba可以将中文文本分成若干个词组,安装 命令如下:

pip install jieba

三、词频分析案例

所有的准备工作都做完后就可以开始做词云分析啦!给大家讲一种最简单的词云,用几行代码就可以生成!

1.生成英文词云

请准备好一篇txt文档,我用的是自己的一篇有关python爬虫调查的英文论文 ,把文档放在demo_wordcloud文件夹里,打开控制台,进入demo_wordcloud文件夹,输入python后回车,首先我们输入如下语句:

filename = "bigdata.txt"
mytext = open(filename).read()  #读取文件,并存放在mytext变量中
mytext #看看输出是否正常

这时我们就可以在控制台看到我们的文章啦

但是我们会发现不太美观,并且一堆文字不知道重点是什么,没关系,马上我们呼唤词云包,让它来帮我们找文章重点与关键词,并可视化输出 ,输入如下语句:

from wordcloud import WordCloud
wordcloud = WordCloud().generate(mytext)

这时词云已经生成了,你没有看错,制作词云的核心代码就是这两行,但你会说,学姐,在哪呢?怎么没看见呢?骗人的吧?别着急,马上可视化出来,这时我们导入python中大名鼎鼎的matplotlib绘图工具包中的pyplot模块

import matplotlib.pyplot as plt
plt.imshow(wordcloud, interpolation=’bilinear’)
plt.axis(“off”)

接下来就是见证奇迹的时刻了,输入plt.show()后,词云图就出来啦!

是不是很激动?通过这张图,我们可以看到高频词出现的字号比较大,且颜色对比也很明显,其实字体颜色甚至词云的形状我们都可以设置,这里我们就不讲了,有兴趣的同学可以自己研究。接下来讲第二个例子,生成中文词云。

2.生成中文词云

看了上面的例子是不是有同学想照葫芦画瓢做中文了?那你肯定会遇到很多问题,中文要麻烦一点,首先需要下载一种中文字体,不然会出现方框没有字,学姐使用的是simsun.ttf,请在这里下载,下载好后同样放在demo_wordcloud下,中文使用jieba分词工具,代码如下:

#-*-coding:utf-8-*-
import matplotlib.pyplot as plt
from wordcloud import WordCloud
import jieba  text = open("大数据.txt","rb").read()
#结巴分词
mytext = jieba.cut(text,cut_all=False)  #采用精准模式,true为全模式
wt = " /".join(mytext)  #设置词云
wc = WordCloud(background_color = "black", #设置背景颜色  max_words = 1000, #设置最大显示的字数  font_path = "simsun.ttf",  #设置中文字体,词云默认字体是“DroidSansMono.ttf字体库”,不支持中文 max_font_size = 50,  #设置字体最大值  random_state = 30, #设置有多少种随机生成状态,即有多少种配色方案  )
mycloud= wc.generate(wt)#生成词云  #展示词云图
plt.imshow(mycloud)
plt.axis("off")
plt.show() 

效果图如下:

到现在为止我们就完成了两个简单的例子啦,但是不知道大家发现没有,中文词云图里面像“因此”这种词出现的频率较多,所以图里面就比较明显,那怎么才能去掉这种停用词呢?怎样才能生成形状不一样的词云图呢?留给大家去思考。

Python入门与词频分析初步相关推荐

  1. 基于python的中文词频分析

    受http://yixuan.cos.name/cn/2011/03/text-mining-of-song-poems/这篇文章的启发,觉得PYTHON来做文字处理分析应该不错,可以来做个词频分析, ...

  2. 大数据分析 | 用 Python 做文本词频分析

    老师教给我,要学骆驼,沉得住气的动物.看它从不着急,慢慢地走,慢慢地嚼,总会走到的,总会吃饱的. ---<城南旧事> 目录 一.前言 Python 简介 Python 特点 二.基本环境配 ...

  3. 使用python进行“中文词频分析”学习笔记

    首先什么是"词频分析"? 词频分析,就是对某一或某些给定的词语在某文件中出现的次数进行统计分析. 那么它能做哪些事情? 比如:分析你最喜欢的作者的表达习惯是怎样的? 判断一首诗是李 ...

  4. 【万能小说分析】【python】【词频分析】【词频统计】【jieba】【matplotlib】【wordcloud】【绘图】

    测试文章[无尽武装]与字数[557万]分析: 1.环境需求:[python][jieba][wordcloud][matplotlib] 我这里提供了[wordcloud]与[matplotlib], ...

  5. 从入门到入土:机器学习part01|python|代码分析|初步学习

    此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出.欢迎各位前来交流.(部分材料来源网络,若有侵权,立即删除) 本人博客所有文章纯属学习之用,不涉及商业利益.不合适引用,自当删除! 若 ...

  6. 【python数据挖掘课程】十三.WordCloud词云配置过程及词频分析

    这篇文章是学习了老曹的微信直播,感觉WordCloud对我的<Python数据挖掘课程>非常有帮助,作者学习后准备下次上课分享给我的学生,让他们结合词频分析来体会下词云.希望这篇基础文章对 ...

  7. 自然语言处理入门(5)——基于WordArt的AGM手机评论词频分析

    本文首先从速卖通(Aliexpress)获取到AGM X1手机(战狼2中吴京用的手机)的评论数据,然后利用一个很好的公开词频分析工具WordArt(https://wordart.com/create ...

  8. python 对excel文件进行分词并进行词频统计_python 词频分析

    python词频分析 昨天看到几行关于用 python 进行词频分析的代码,深刻感受到了 python 的强大之处.(尤其是最近自己为了在学习 c 语言感觉被它的语法都快搞炸了,python 从来没有 ...

  9. python数据挖掘学习笔记】十三.WordCloud词云配置过程及词频分析

    #2018-03-28 09:59:40 March Wednesday the 13 week, the 087 day SZ SSMR 11,12因为涉及到数据库被我暂时放弃了 python数据挖 ...

最新文章

  1. java 嵌套对象序列化_在javascript中将复杂的,嵌套的,用户定义的对象序列化为字符串...
  2. Asp.Net中的ViewState知识
  3. 黑马vue---13、事件修饰符的介绍
  4. python网络爬虫权威指南 豆瓣_豆瓣Python大牛写的爬虫学习路线图,分享给大家!...
  5. 删除未使用的引用 | Visual Studio 2019(16.10)新功能试用
  6. [BeiJing2011][bzoj2460] 元素
  7. linux 自动安装mysql_Linux安装mysql
  8. fwrite在任意位置写入文件,并可修改文件内容
  9. python多线程写同一个文件_Python多线程快速写入文件,python,飞速
  10. “天才少年”刚毕业就拿到华为200万年薪:确认过眼神,是我羡慕不来的人
  11. 每个创始人都需要了解的来自 Y Combinator 的 13 个见解
  12. 避免jQuery名字冲突--noConflict()方法
  13. python两数相加有进退位_Python 之父透露退位隐情,与核心开发团队产生隔阂
  14. 动态获取API函数地址
  15. 前端JS获取内网IP地址
  16. 打开量化投资黑箱-v2-黑箱结构
  17. 使用JavaScript删除HTML元素
  18. 晚安西南-----尾管悬挂与回接
  19. linux把大文件分成小文件,linux文件分割(将大的日志文件分割成小的)
  20. 计算机系女学霸男生追,杨紫李现解锁恋爱新姿势:吃最甜的糖,追最燃的梦

热门文章

  1. 黑科技:自定义百度云分享密码
  2. 气象强迫数据(fort.22)
  3. c语言错误187,错误 C187 这不是一个左值。没有发现错在哪里啊?
  4. 企业管理中,如何组建数据团队
  5. numpy 数组、矩阵乘法运算
  6. Win10下音频设备无法播放音乐问题定位
  7. Android Wear 进阶 - 4 发送和同步数据 Sending and Syncing Data
  8. python日志实现
  9. hbase错误:Org.apache.hadoop.ipc.RemoteException:User:client is not allowed to impersonate root
  10. 战队口号霸气押韵8字_2020备战双十一口号