一、文本挖掘定义

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

二、文本挖掘步骤

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

免费公开课福利:

用mysql做文本挖掘_手把手教你做文本挖掘相关推荐

  1. jsp mysql视频_手把手教你做jsp servlet mysql实现的图书管理系统附带视频开发教程和完整源码...

    上一个教程我们做的是对数据库框架底层原理的讲解,然后教大家做了一个自己的数据库框架,这次我们做的这个图书管理系统就是用我们上个教程自己写的数据库框架,整个项目做完框架运行的很稳定,没有出现任何问题.如 ...

  2. ppt怎么把图片做成翻书效果_手把手教你做图片翻书效果.ppt

    手把手教你做图片翻书效果 第六张幻灯片 (第2张翻第3张的动画过程) 第七张幻灯片 (右边超链接到自定义放映中的"第3张翻第4张" , 左边超链接到自定义放映中的"第3张 ...

  3. python倾向匹配得分_手把手教你做倾向评分匹配 -PSM

    原标题:手把手教你做倾向评分匹配 -PSM 本文首发于"百味科研芝士"微信公众号,转载请注明:百味科研芝士,Focus科研人的百味需求. 各位科研芝士的朋友大家好,今天和大家分享一 ...

  4. mysql mtbf计算_手把手教你计算MTBF(平均故障间隔时间),有实例!

    原标题:手把手教你计算MTBF(平均故障间隔时间),有实例! MTBF(平均故障间隔时间) MTBF,即平均故障间隔时间,英文全称是"Mean Time Between Failure&qu ...

  5. java学生签到系统视频教程_手把手教你做一个Java web学生信息、选课、签到考勤、成绩管理系统附带完整源码及视频开发教程...

    四个阶段的Java web学生信息系统视频教程终于录制完成了,系统用到的知识点有:jsp+servlet+mysql+jquery+ajax,前端采用的是当下最流行的easyui管理框架,全部采用面向 ...

  6. ssm框架mysql自增_手把手教你整合最优雅SSM框架

    我们看招聘信息的时候,经常会看到这一点,需要具备 SSM 框架的技能, SpringMVC 可以完全替代 Struts,配合注解的方式,编程非常快捷,而且通过 restful 风格定义 url,让地址 ...

  7. bootstraptable 怎么在特定行添加数据_手把手教你做一个“渣”数据师,用Python代替老情人Excel...

    大数据文摘出品 来源:medium 编译:张大笔茹 十年前,你说你是做数据的,大家的反应就是 -- 用 Excel 做做表. 现在,要成为一个合格的数据分析师,你说你不会 Python,大概率会被江湖 ...

  8. r语言做断轴_手把手教你用R语言做回归后的残差分析

    本文介绍了做残差分析的方法及其重要性,以及利用R语言实现残差分析. 在这篇文章中,我们通过探索残差分析和用R可视化结果,深入研究了R语言. 残差本质上是当一个给定的模型(在文中是线性回归)不完全符合给 ...

  9. asp mysql 留言本_手把手教你用ASP制作留言本

    六.制作管理登陆页面 留言本的管理功能对于留言本来说就不言而喻了,像论坛的登陆功能就是一个很好的例子,不过我们做留言本基本上有删除功能就行了,写这个教程是为了更多的ASP入门者更好的了解ASP,所以旨 ...

最新文章

  1. ERROR:org.apache.hadoop.hbase.PleaseHoldException: Master is initializing 解决方案
  2. Putdb WebBuilder 6.5 正式版本发布
  3. 关于SQLserver 的windows验证
  4. jdk8 list转Map
  5. mysql 单表union_在MySQL中用union合并两个表?
  6. 常用 Dos 命令+杂项-常用的命令符+常用的公式
  7. 批量部署 自动化之 - [pssh](转)
  8. 段钢荣获 WIT Awards 2018 年度安全人物|FIT 2019
  9. 了解GDAL的图像处理/Python
  10. 64位Windows2003下如何正确发布VesnData.Net(VDN)
  11. 【原创】SWOT分析思维的一些基本思考与见解
  12. 阿里云API调用 OCR python
  13. wordpress主题框架之Thematic介绍
  14. 【漏洞复现-maccms-命令执行】vulfocus/maccms-cve_2017_17733
  15. JAVA核心:I/O(输入/输出)
  16. wps表格户主序号_WPS表格怎么设置自动排列序号?
  17. python requests post 二进制流_Python的requests如何同时post图片二进制流和json数据application/octet-stream...
  18. 爬虫实战_爬取静态单张图片
  19. 微信公众号之微信支付
  20. TCP和UDP区别,以及适用情况

热门文章

  1. matlab fft例程,c++ FFTW与Matlab FFT
  2. mysql注释用处_mysql的注释有几种写法
  3. VS2017项目打包为exe和setup
  4. python 批量改名
  5. pytorch 批量筛选
  6. 实时人脸关键点源码推荐
  7. Python 查重,统计重复 排序
  8. 使用pytorch从零开始实现YOLO-V3目标检测算法 (二)
  9. 证明sinx/x的极限等于1(x趋向于0)
  10. ARM NEON 优化