文档章节

R最简文本挖掘之---凡人修仙传

 齐天_大圣
发布于 2017/05/10 22:15
字数 666
阅读 1096
收藏 8

       最近一直迷恋文本挖掘,其实大数据在非结构化的处理上主要要解决的一个问题就是文本挖掘(就像你看Hadoop第一个例子就是countWord),主要还是以前看小说看的多,有时候就想总结一下,看看每个作者都喜欢用哪些词汇。

         文本挖掘要解决几个问:

        1、中文词汇,这个我们有强大的搜狗(R可以直接用搜狗词库,福音啊);

        2、词库中没有的词汇,这个就需要我们手动去录入了;

        3、同义词,同义词需要我们手工去解决,例如人名,齐天大圣和宇帝是同一个人(都是我,这里请加一个表情);

        4、没有了,开搞。

        首先要导几个包,没有的自行install,有的直接library。主要是rJava,Rwordseg,wordcloud(注意大小写,rJava安装要注意一下,你的jdk位数和R的位数最好一致,不一致的话在RStudio中自行设置),rJava是连接java的(废话),这里面其实就是连接你的java库,供Rwordseg包调用的;Rwordseg包就牛逼了,LiJian大师开发,可以去他博客踩踩,提供了分词的一堆功能,后面用到了在讲;wordcloud是画词云的,现在的数据挖掘可不比以前了,搞完要做可视化,画的漂漂亮亮,老板才给钱。

        导入完词典,就可以开始我们的分词大业了;

        将要分词的文本加载到R中,我们使用非常简单的read方法:

        read.csv(path, stringsAsFactors=FALSE, header=FALSE)
        然后调用Rwordseg包中的分词函数segmentCN:

        pwords <- unlist(lapply(X=people, FUN=segmentCN))
        分词结束后就是统计每个词有几个了:

        v <- table(unlist(pword))
        为了方便我们去掉单字和较少的词汇,我们把结果放到一个data.frame中去过滤:

        d <- data.frame(词汇=names(v), 词频=v)
        然后过滤那些没用的:

        d <- subset(d, nchar(as.character(d$词汇))>1 & d$词频.Freq>=100)
        最后就是画词云了

        wordcloud(d$词汇, d$词频.Freq, random.order=FALSE, random.color=TRUE);
        搞定?等等,发现没有男主角和女主角的名字哇?
        那是因为词典里面没有,我们要手动录入词典里面没有的词汇,也是Rwordseg包里面的函数:

        insertWords()

         怎么样,搞定了没有,任意你感兴趣的书籍都可以自己挖一遍,是不是很爽。

         PS:文本大小15M,慢到你怀疑是不是失败了,没有截图,因为不小心把Rstudio关了,没耐性在跑一次了

© 著作权归作者所有

粉丝 4
博文 3
码字总数 4699
作品 0
成都
私信 提问
加载中

评论(8)

l
lblin
好闲
齐天_大圣 博主

引用来自“hylent”的评论

好奇结果是啥 😂
回复里面不能贴图,下一个博客加上
齐天_大圣 博主

引用来自“烽火云烟”的评论

分析一下斗破苍穹,肯定会发现一个词频很高的词:恐怖如斯
可以跑一下,不过词库里面肯定没有这个词,要用wordinsert()函数加一下
齐天_大圣 博主

引用来自“改着名儿玩”的评论

文本大小15M,慢到你怀疑是不是失败了,没有截图,因为不小心把Rstudio关了,没耐性在跑一次了。太草率了吧
又跑了一下 😂
> system.time(
+ pwords <- unlist(lapply(X=people, FUN=segmentCN))
+ )
用户 系统 流逝
3480.16 10.54 3302.54
烽火云烟
烽火云烟
分析一下斗破苍穹,肯定会发现一个词频很高的词:恐怖如斯
Winniesnow
Winniesnow
好奇+1
hylent
hylent
好奇结果是啥 😂
改着名儿玩
改着名儿玩
文本大小15M,慢到你怀疑是不是失败了,没有截图,因为不小心把Rstudio关了,没耐性在跑一次了。太草率了吧
mac TXT 文档乱码

mac TXT 文档乱码 这是编码格式的原因,改一下就好: 使用 textEdit 打开 txt 文档 偏好设置 -> 打开与存储 -> 打开文件编码 选择 中国 (GB 18030) ,保存文件编码 选择 中国 (GB 18030) 关闭...

iOS_愛OS
2017/11/28
0
0
谈谈R中的乱码(三)

前面讲过,R 中字符向量可以有多种编码。一般情况下,对于混合编码,R 都能很好的自动处理。例如: x1 <- '中国'x2 <- iconv(x1, 'GB2312', 'UTF-8') == 判断也没问题 x2 == '中国' [1] TRU......

R语言中文社区
2018/02/08
0
0
从《透视小邪医》谈玄幻修仙小说

微信原文地址: 【文学文娱】从《透视小邪医》谈玄幻修仙小说 一、写在前边 好几星期没有更新文章了,因为都在看玄幻修仙小说《透视小邪医》,600万字的小说,我看了20天,作者也写了6年,真...

程序员的文娱情怀
2018/08/05
0
0
avue v1.5.0 发布,快速构建 crud 和 form 等组件的解决方案

1.5.0 说明:avue1.x版本已经趋向于稳定,将不再做新的功能增加,但会根据issuse继续持续维护和优化将更多的精力投放于avue2.0 课程视频更新 B站视频 1.Avue修仙系列之基础环境的准备和课程介...

avue_smallwei
2018/07/15
3.5K
0
乱炖“简书交友”数据之代码(2):关键词抽取、Word2Vec词向量

继续更新出来本系列的代码:乱炖数据之2700余篇“简书交友”专题文章数据的花式玩法 在乱炖“简书交友”数据之代码(1)一文里,主要涉及结构化数据的分析,文本挖掘如词频统计、词云图等。本...

Deserts_X
2018/06/16
0
0

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周日乱弹 —— 别问,问就是没空

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @tom_tdhzz :#今日歌曲推荐# 分享容祖儿/彭羚的单曲《心淡》: 《心淡》- 容祖儿/彭羚 手机党少年们想听歌,请使劲儿戳(这里) @wqp0010 :周...

小小编辑
今天
220
4
golang微服务框架go-micro 入门笔记2.1 micro工具之micro api

micro api micro 功能非常强大,本文将详细阐述micro api 命令行的功能 重要的事情说3次 本文全部代码https://idea.techidea8.com/open/idea.shtml?id=6 本文全部代码https://idea.techidea8....

非正式解决方案
今天
5
0
Spring Context 你真的懂了吗

今天介绍一下大家常见的一个单词 context 应该怎么去理解,正确的理解它有助于我们学习 spring 以及计算机系统中的其他知识。 1. context 是什么 我们经常在编程中见到 context 这个单词,当...

Java知其所以然
昨天
5
0
Spring Boot + Mybatis-Plus 集成与使用(二)

前言: 本章节介绍MyBatis-Puls的CRUD使用。在开始之前,先简单讲解下上章节关于Spring Boot是如何自动配置MyBatis-Plus。 一、自动配置 当Spring Boot应用从主方法main()启动后,首先加载S...

伴学编程
昨天
8
0
用最通俗的方法讲spring [一] ──── AOP

@[TOC](用最通俗的方法讲spring [一] ──── AOP) 写这个系列的目的(可以跳过不看) 自己写这个系列的目的,是因为自己是个比较笨的人,我曾一度怀疑自己的智商不适合干编程这个行业.因为在我...

小贼贼子
昨天
8
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部