文本挖掘案例

一、文本挖掘定义

文本挖掘指的是从文本数据中获取有价值的信息和知识,它是数据挖掘中的一种方法。文本挖掘中最重要最基本的应用是实现文本的分类和聚类,前者是有监督的挖掘算法,后者是无监督的挖掘算法。

二、文本挖掘步骤

1)读取数据库或本地外部文本文件

2)文本分词

2.1)自定义字典

2.2)自定义停止词

2.3)分词

2.4)文字云检索哪些词切的不准确、哪些词没有意义,需要循环2.1、2.2和 2.3步骤

3)构建文档-词条矩阵并转换为数据框

4)对数据框建立统计、挖掘模型

5)结果反馈

三、文本挖掘所需工具

本次文本挖掘将使用R语言实现,除此还需加载几个R包,它们是tm包、tmcn包、Rwordseg包和wordcloud包。其中tmcn包和Rwordseg包无法在CRAN镜像中下载到,有关这两个包的下载方法可参见下文>>>

四、实战

本文所用数据集来自于sougou实验室数据,具体可至链接下载>>>

本文对该数据集做了整合,将各个主题下的新闻汇总到一张csv表格中,数据格式如下图所示:

具体数据可至文章后面的链接。

接下来需要对新闻内容进行分词,在分词之前需要导入一些自定义字典,目的是提高切词的准确性。由于文本中涉及到军事、医疗、财经、体育等方面的内容,故需要将搜狗字典插入到本次分析的字典集中。

如果需要卸载某些已导入字典的话,可以使用uninstallDict()函数。

分词前将中文中的英文字母统统去掉。

图中圈出来的词对后续的分析并没有什么实际意义,故需要将其剔除,即删除停止词。

停止词创建好后,该如何删除76条新闻中实际意义的词呢?下面通过自定义删除停止词的函数加以实现。

相比与之前的分词结果,这里瘦身了很多,剔除了诸如“是”、“的”、“到”、“这”等无意义的次。

判别分词结果的好坏,最快捷的方法是绘制文字云,可以清晰的查看哪些词不该出现或哪些词分割的不准确。

仍然存在一些无意义的词(如说、日、个、去等)和分割不准确的词语(如黄金周切割为黄金,医药切割为药等),这里限于篇幅的原因,就不进行再次添加自定义词汇和停止词。

此时语料库中存放了76条新闻的分词结果。

从图中可知,文档-词条矩阵包含了76行和7939列,行代表76条新闻,列代表7939个词;该矩阵实际上为稀疏矩阵,其中矩阵中非0元素有11655个,而0元素有591709,稀疏率达到98%;最后,这7939个词中,最频繁的一个词出现在了49条新闻中。

由于稀疏矩阵的稀疏率过高,这里将剔除一些出现频次极地的词语。

这样一来,矩阵中列大幅减少,当前矩阵只包含了116列,即116个词语。

为了便于进一步的统计建模,需要将矩阵转换为数据框格式。

总结

所以在实际的文本挖掘过程中,最为困难和耗费时间的就是分词部分,既要准确分词,又要剔除无意义的词语,这对文本挖掘者是一种挑战。

文中数据和脚本可至如下链接下载:

http://yunpan.cn/cupyBj9xTkHe7 访问密码 a88b

作者:刘顺祥。数据分析师,热爱数据分析与挖掘工作,擅长使用R语言

时间: 2024-10-11 08:27:38

文本挖掘案例的相关文章

借助亚马逊S3和RapidMiner将机器学习应用到文本挖掘

本挖掘典型地运用了机器学习技术,例如聚类,分类,关联规则,和预测建模.这些技术揭示潜在内容中的意义和关系.文本发掘应用于诸如竞争情报,生命科学,客户呼声,媒体和出版,法律和税收,法律实施,情感分析和趋势识别. 在本篇博客帖中,你将会学习到如何将机器学习技术应用到文本挖掘中.我将会向你展示如何使用RapidMiner(一款流行的预测分析开源工具)和亚马逊S3业务来创建一个文件挖掘应用.亚马逊S3业务是一项易用的存储服务,可使组织在网页上的任何地方存储和检索任意数量的数据. 掘模型产生的结果可以得到

重磅︱文本挖掘深度学习之word2vec的R语言实现

笔者寄语:2013年末,Google发布的 word2vec工具引起了一帮人的热捧,大家几乎都认为它是深度学习在自然语言领域的一项了不起的应用,各种欢呼"深度学习在自然语言领域开始发力 了". 基于word2vec现在还出现了doc2vec,word2vec相比传统,考虑单词上下文的语义:但是doc2vec不仅考虑了单词上下文的语义,还考虑了单词在段落中的顺序. 如果想要了解word2vec的实现原理,应该读一读官网后面的三篇参考文献.显然,最主要的应该是这篇: Distributed

大数据分析案例

部分数据来源于网络,如有侵权请告知. 一.大数据分析在商业上的应用 1.体育赛事预测 世界杯期间,谷歌.百度.微软和高盛等公司都推出了比赛结果预测平台.百度预测结果最为亮眼,预测全程64场比赛,准确率为67%,进入淘汰赛后准确率为94%.现在互联网公司取代章鱼保罗试水赛事预测也意味着未来的体育赛事会被大数据预测所掌控. “在百度对世界杯的预测中,我们一共考虑了团队实力.主场优势.最近表现.世界杯整体表现和博彩公司的赔率等五个因素,这些数据的来源基本都是互联网,随后我们再利用一个由搜索专家设计的机

关于数据挖掘中的文本挖掘

文本挖掘, 顾名思义,就是挖掘本文信息中潜在的有价值的信息.文本数据与数值数据的区别有三: 第一,非结构化且数据量大: 文本数据的数据量是非常之巨大的,一百万条结构化数据可能才几十到几百兆,而一百万条文本数据就已经是GB了.当然文本数据的数据量无法与每天的log数据相比,但在基础数据中算是占比很大的数据类型了.大数据容量的数据和大数据条目的数据处理方式完全不一样,普通的机器甚至都无法按条处理:其次呢,文本数据是非结构化数据.非结构化意味着没有任何的列可供你定义和参考. 第二,它与人的语言是对接的

舆情,文本挖掘

MLE,MAP,EM 和 point estimation 之间的关系是怎样的 和点估计相对应的是区间估计,这个一般入门的统计教材里都会讲.直观说,点估计一般就是要找概率密度曲线上值最大的那个点,区间估计则要寻找该曲线上满足某种条件的一个曲线段. 最大似然和最大后验是最常用的两种点估计方法.以最简单的扔硬币游戏为例,一枚硬币扔了五次,有一次是正面.用最大似然估计,就是以这五次结果为依据,判断这枚硬币每次落地时正面朝上的概率(期望值)是多少时,最有可能得到四次反面一次正面的结果.不难计算得到期望概

数据挖掘算法与现实生活中的应用案例

如何分辨出垃圾邮件"."如何判断一笔交易是否属于欺诈"."如何判断红酒的品质和档次"."扫描王是如何做到文字识别的"."如何判断佚名的著作是否出自某位名家之手"."如何判断一个细胞是否属于肿瘤细胞"等等,这些问题似乎都很专业,都不太好回答.但是,如果了解一点点数据挖掘的知识,你,或许会有柳暗花明的感觉. 本文,主要想简单介绍下数据挖掘中的算法,以及它包含的类型.然后,通过现实中触手可及的.活生生的

使用文本挖掘实现站点个性化推荐

作者:韦玮,重庆韬翔网络科技有限公司(上海)董事长兼总经理,IT作家,CSDN社区专家. 本文为韦玮原创文章,未经允许不得转载,点此查看作者有关<Python数据分析与挖掘经典案例实战>经验分享. 技术背景 一条信息是否能够让用户感兴趣,主要取决于这条信息的内容是否是用户关注的内容.而将用户感兴趣的信息推送给对应的用户,可以更好地发挥该信息的价值,否则,不仅对应信息的价值无法有效发挥,甚至会引起用户的情绪,因为如果用户对这条信息不感兴趣,那么这条信息对于该用户来说就相当于垃圾信息. 现在关键的

Spark2.0从入门到精通:Scala编程、大数据开发、上百个实战案例、内核源码深度剖析视频教程

38套大数据,云计算,架构,数据分析师,Hadoop,Spark,Storm,Kafka,人工智能,机器学习,深度学习,项目实战视频教程 视频课程包含: 38套大数据和人工智能精品高级课包含:大数据,云计算,架构,数据挖掘实战,实时推荐系统实战,电视收视率项目实战,实时流统计项目实战,离线电商分析项目实战,Spark大型项目实战用户分析,智能客户系统项目实战,Linux基础,Hadoop,Spark,Storm,Docker,Mapreduce,Kafka,Flume,OpenStack,Hiv

Spark2.1内部原理剖析与源码阅读、程序设计与企业级应用案例视频教程

38套大数据,云计算,架构,数据分析师,Hadoop,Spark,Storm,Kafka,人工智能,机器学习,深度学习,项目实战视频教程 视频课程包含: 38套大数据和人工智能精品高级课包含:大数据,云计算,架构,数据挖掘实战,实时推荐系统实战,电视收视率项目实战,实时流统计项目实战,离线电商分析项目实战,Spark大型项目实战用户分析,智能客户系统项目实战,Linux基础,Hadoop,Spark,Storm,Docker,Mapreduce,Kafka,Flume,OpenStack,Hiv