NLP实现文本分词+在线词云实现工具
实现文本分词+在线词云实现工具
词云是NLP中比较简单而且效果较好的一种表达方式,说到可视化,R语言当仍不让,可见R语言︱文本挖掘——词云wordcloud2包
当然用代码写词云还是比较费劲的,网上也有一些成型的软件供大家使用。
本节转载于金砖咖啡馆公众号
我们词云制作工具是目前非常流行的tagxedo,tagxedo对于英文的分词做的很好(废话,英文单词之间有空格),但是对于中文分词做的不好,于是我们需要用到另外一个在线工具http://life.chacuo.net/convertexportword(百度找的,你也可以用别的),将中文的词和词之间加上空格(分词)。
(1)打开分词网站http://life.chacuo.net/convertexportword,将你需要做词云的文本放到第一个框里,我们这里就直接再搜狐上找了一篇文章(http://stock.sohu.com/20160422/n445480002.shtml),然后点击“中文分词”按钮,你就会发现,网站就把第一个框里的文本分词结果放在了第二个框里(加了空格)。将第二个框的结果全选,然后“复制”,备用。
(2)打开词云网站:http://www.tagxedo.com/app.html,(注意:第一次打开的时候会让你安装“Silverlight”,你只需要按照指示下载安装,然后刷新上面的链接。
有时候打不开,可参考一些其他词云网站。
接下来的步骤如下:
a.加载文本。打开load,在“enter text”里面将前面复制的分词后文本粘贴进去,再按“Submit”。(等待一下,等下面的进度条读完)。
b.加载图片。为了做个性化词云,我提前准备了一张奥巴马的照片。点击左边“Shape”会弹出图片菜单,我们选择下方的“AddImage”(如果你想用内置的图片直接在弹出菜单里面选择就好了)。
c.图片设置。点击“AddImage”,加载完图片后,菜单会让你做一些设置,只要是调整threshold和Blur(调整边界和模糊度)。下面还有一些设置文字摆放位置的,自己点一下,很容易摸索,最后点击“accept”,运行一下就看到结果了。
d.保存。点击“save”,选择自己要的图片大小,就可以保存了。(也就得到最上面的效果咯)
e.词频。如果想看词频或者像删除某些不需要的词(比如“的”),那么单机“word|layoutoptions”里面的“skip”菜单,里面有详细词频,不需要的词,直接点“Keep”就变成“Skip”了(也就是删除了)。
二、Wordle
本节转载于36大数据,文章《免费词云可视化工具,你知道几款? 36大数据》
体验词云:http://www.wordle.net/
这些年比较火的一款词云软件,Wordle是一个用于从文本生成词云图而提供的游戏工具,词云图会更加突出话题并频繁地出现在源文本,它的优点是可以快速的分析文本或网站的词频,并以多种多种风格展示,且支持文字字体选择和用户自定义颜色。做完词云图,生成图像后还可以保存在网络之中供你查看、链接、下载以及与好友分享。
由于Wordle目前只支持英文,所以应在Excel或记事本里先将中文信息转换成Wordle可以识别的语言,即英文或数字。
三、WordItOut
本节转载于36大数据,文章《免费词云可视化工具,你知道几款? 36大数据》
体验词云:http://worditout.com/
WordItOut网站很人性,还给用户解释什么是词云以及词云的作用等信息。它操作简单,进入网站后只需要输入一段文本,然后就可以生成各种样式的“云”文字。用户可以根据自己的需要对WordItOut进行再设计,比如颜色、字符、字体、背景、文字位置等,保存下载后,可以复制。
但是WordItOut是不识别中文的,如果输入中英混合的文本,保存后只显示英文字体,对于不懂英文的同学是比较痛苦的。
———————————————————————————————————————— 四、Tagul
本节转载于36大数据,文章《免费词云可视化工具,你知道几款? 36大数据》
体验词云:https://tagul.com/
Tagul云可以自定义字体、词云的形状(有爱心、BUS、雪人、人像、UFO等),颜色等,做出来的词云图很酷炫,为网站访问者提供良好的用户体验。用户可以在网站做好词云图,然后印在衣服、杯子、鼠标垫等地方,自己设计身边的物件,感觉很有成就感,很实用的网站。
———————————————————————————————————
五、ToCloud
本节转载于36大数据,文章《免费词云可视化工具,你知道几款? 36大数据》
ToCloud
体验词云:http://www.tocloud.com/
ToCloud是一个在线免费标签云生成器,你可以设置词的长度和频率。ToCloud整个页面看着有点乱的感觉,但是可千万不要小看它,工具非常好用,它能提取短语,是一个比较好的标签云工具之一利用词频生成词云,你可以快速了解页面优化了某些单词。
现在,来两款国内的数据产品,绝对国产,再也不用担心英文不好或者中英文互导麻烦了。
————————————————————————————————————————
六、图悦
本节转载于36大数据,文章《免费词云可视化工具,你知道几款? 36大数据》
1、图悦
体验词云:http://www.picdata.cn/
这款国内的在线词频分析工具,在长文本自动分词并制作词云方面还是很出众的,而且也容易上手,还可以自定义定制图形模板:标准、微信、地图等,切换自如,用起来体验很不错。
但是图悦在导出excel词频有一些不足的地方,不介意的话可以忽略。
————————————————————————————————————————
七、BDP个人版
本节转载于36大数据,文章《免费词云可视化工具,你知道几款? 36大数据》 2、BDP个人版
体验词云:https://me.bdp.cn/home.html
这是一款数据可视化工具,除了词云,还有很多其他酷炫的图表,如GIS地图、漏斗图等。BDP很容易上手,直接把词语这个数据拉到维度栏,再选择词云就瞬间呈现词云图表,BDP会自动算好词频,你可以设置颜色,快速实现词云可视化。
不足之处,BDP不是专门制作词云的工具,但是还有几十种图表供你使用,是一款比较不错的数据分析工具。
这么多款词云制作工具,大家自行选择吧,感兴趣的话都可以试试,会有很多有意思的发现,原来词云可视化是如此简单,瞬间觉得自己棒棒的。
demo2:jieba + https://wordart.com/
用jieba分词提取关键词做漂亮的词云
用到的工具
- 原始数据:《白夜行》小说,txt格式(我是用calibre把原来mobi格式的书转成txt的)。后期可以用爬虫爬点网页数据做原始数据。为简单就先用txt练手好了。
- 提取关键词:jieba分词、停用词表
- 在线词云生成工具:TAGUL
简单分析一下
生成词云最关键的问题是中文分词,统计分析各个词的权重(权重较高的字体显示较大)。这些问题jieba分词已经帮我们解决了。我们只需要import jieba.analyse
,使用jieba.analyse.extract_tags(sentence, topK=20, withWeight=False, allowPOS=())
方法即可,当然只是提取关键词还是不够的,因为有些没有意义的常用词诸如“我的”、“或者”、“一个”等词,会出现在结果里面,还需要一个“停用词表”来帮我们过滤结果。 我们的目标是提取关键词,并得到“关键词+制表符+权重”的文本,这里关键词和权重用制表符隔开是为了在用在线工具的时候,能顺利导入权重的值,决定词的大小(size)。
关键词和size中间用制表符分开
步骤:
- 安装jieba
pip install jieba
- 准备好txt文件和停用词表(网上可以下载到,txt格式即可)
- 编写代码
import jieba.analyse
path = '你的txt文件路径'
file_in = open(path, 'r')
content = file_in.read()
try:
jieba.analyse.set_stop_words('你的停用词表路径')
tags = jieba.analyse.extract_tags(content, topK=100, withWeight=True)
for v, n in tags:
#权重是小数,为了凑整,乘了一万
print v + '\t' + str(int(n * 10000))
finally:
file_in.close()
运行结果如下:
4.打开TAGUL,开始制作词云,把结果贴进import words里
5.选个shape(词云轮廓)
6.在fonts中,导入一个中文字体,我用的微软雅黑:
7.点击visualize即可生成
8.Download and Share里面可以下载需要的格式。
参考文章:
http://www.jianshu.com/p/6a285dfa3d87
1.TF-IDF与余弦相似性的应用(一):自动提取关键词 2.超简单:快速制作一款高逼格词云图 3.jieba的github
NLP实现文本分词+在线词云实现工具的更多相关文章
- jieba分词wordcloud词云
1.jieba库的基本介绍 (1).jieba是优秀的中文分词第三方库 中文文本需要通过分词获得单个的词语 jieba是优秀的中文分词第三方库,需要额外安装 jieba库提供三种分词模式,最简单只需掌 ...
- 在线词云制作tagxedo
最近在用python制作词云的时候发现了一个更加方便快捷很好玩的词云制作网站 http://www.tagxedo.com/app.html 所以今天就来大致介绍下是怎么使用的 1.先来介绍下tagx ...
- python使用matplotlib画图,jieba分词、词云、selenuium、图片、音频、视频、文字识别、人脸识别
一.使用matplotlib画图 关注公众号"轻松学编程"了解更多. 使用matplotlib画柱形图 import matplotlib from matplotlib impo ...
- python抓取数据构建词云
1.词云图 词云图,也叫文字云,是对文本中出现频率较高的"关键词"予以视觉化的展现,词云图过滤掉大量的低频低质的文本信息,使得浏览者只要一眼扫过文本就可领略文本的主旨. 先看几个词 ...
- python爬虫——京东评论、jieba分词、wordcloud词云统计
接上一章,动态页面抓取——抓取京东评论区内容. url=‘https://club.jd.com/comment/productPageComments.action?callback=fetchJS ...
- 新技能 get —— 使用 python 生成词云
什么是词云(word cloud)呢?词云又叫文字云,是对文本数据中出现频率较高的"关键词"在视觉上的突出呈现,形成关键词的渲染形成类似云一样的彩色图片,从而一眼就可以领略文本数据 ...
- [python] 基于词云的关键词提取:wordcloud的使用、源码分析、中文词云生成和代码重写
1. 词云简介 词云,又称文字云.标签云,是对文本数据中出现频率较高的“关键词”在视觉上的突出呈现,形成关键词的渲染形成类似云一样的彩色图片,从而一眼就可以领略文本数据的主要表达意思.常见于博客.微博 ...
- Python 词云 【中/英】小白简单入门教程
1. 分析 构建词云需要具备: 原料即文章等内容 将内容进行分词 将分词后的内容利用构建词云的工具进行构建 保存成图片 2. 需要的主要模块 jieba 中文分词 wordcloud 构建词云 3. ...
- Python基于jieba的中文词云
今日学习了python的词云技术 from os import path from wordcloud import WordCloud import matplotlib.pyplot as plt ...
随机推荐
- 创建 maven maven-archetype-quickstart 项目抱错问题解决方法
问题: eclipse装m2eclipse的时候装完后创建项目的时候报错: Unable to create project from archetype org.apache.maven.arche ...
- Easy APNs Provider 消息推送测试工具
1.Easy APNs Provider 简介 Easy APNs Provider 是一款为 iOS.Mac App 提供推送测试的小工具. App Store 下载地址 Easy APNs Pro ...
- SQLServer2008 全文检索摘记
最近在做全文搜索的内容,google了一下全文检索,发现了一些问题,现在总结如下: 全文索引和查询概念(摘自SQL 联机帮助)SQL Server 2008 为应用程序和用户提供了对 SQL Serv ...
- CTreeCtrl获得鼠标点击时的节点
原文链接: http://blog.csdn.net/lcalqf/article/details/21321923 1.添加图标 HICON icon[10]; icon[0]=AfxGetApp( ...
- nginx last 和break redirect 和 permanent
一.last & break (1)last 和 break 当出现在location 之外时,两者的作用是一致的没有任何差异. 注意一点就是,他们会跳过所有的在他们之后的rewrite 模块 ...
- 要想有什么样的成就就要有什么样的眼光-SNF快速开发平台
1.普通人的圈子,谈论的是闲事,赚的是 工资,想的是明天. 2.生意人的圈子,谈论的是项目,赚的是 利润,想的是下一年. 3.事业人的圈子,谈论的是机会,赚的是 财富,想到的是未来和保障. 4.智慧人 ...
- java中比较两个double类型值的大小
非整型数,运算由于精度问题,可能会有误差,建议使用BigDecimal类型,具体 BigDecimal的详细说明参考jdk开发帮助文档. import java.math.BigDecimal; pu ...
- tomcat 8.0 进程没有全部杀死
The web application [FileIO_new_interface] created a ThreadLocal with key of type [java.lang.ThreadL ...
- Navicat for SQL Server(SQLServer数据库管理)
Navicat for SQL Server 是一套专为 Mircosoft SQL Server设计的强大数据库管理及开发工具.它可以用于 SQL Server 2000.2005 及 2008R2 ...
- SharePreference 注册 registerOnSharedPreferenceChangeListener 无法回调的问题
以前一直没有用过 registerOnSharedPreferenceChangeListener 回调方法,今天用到了,就设置了下,结果发现不起作用,因为一直没有回调. 代码: mSp = this ...