[R语言]文本分类(1)

来源:互联网 发布:刺客信条枭雄知乎 编辑:程序博客网 时间:2024/05/02 15:36

因项目需要,结合自身专业知识,故而接触了R语言及一些常用分类器。记录下自己这一个多月的学习历程。


R语言

与起源于贝尔实验室的s语言类似,R也是一种为统计计算和绘图而生的语言和环境,它是一套开源的数据分析解决方案,由一个庞大且活跃的全球性研究型社区维护。

R是一门脚本语言,在绘图方面有着非常强的能力,它可以让你集中到你要设计的逻辑上来,而不必太过纠结于代码的实现。它的包实在太丰富,几乎能满足你全部的需要。我使用的IDE是RStudio。然后介绍几个我在文本分类里用到的包:

  • RODBC 连接数据库的包,我主要用它读取数据库里的信息然后保存到本地,制成文本文件。
  • tm 文本挖掘的包,对数据的读入、输出及语料库的提取、转化、过滤等等,最终转化成文档-词条矩阵。
  • RwordSeg 这是一个分词包,需配合rJava包一起使用。分词效果对我而言已够用。
  • maxent 最大熵分类器包,选择最大熵分类器是因为它效率较高。
  • e1071 该包中有svm分类器。具体可看使用者文档。

为了激发兴趣,学习了其中一个很有意思的包:词云包——WordCloud
代码如下:

library(wordcloud)  #加载wordcloud包library(RColorBrewer) #加载颜色包png(file="WordCloud.png", bg="white",width = 600, height = 780) #新建一个png的文件作为词云文件。colors = brewer.pal(8,"Dark2")[-(1:4)]data = read.csv("wordcount.txt") #读取设置的词及频度,用于显示。#然后调用wordcloud函数,每个参数都有各自的含义,具体可在网上查阅。wordcloud(data$name,data$count,scale=c(3,0.4),min.freq = -Inf,max.words=178,colors =             colors,random.order = F,random.color = T,ordered.colors = F)dev.off() 

截个图
wordcloud.txt:
这里写图片描述
worcloud.png:
这里写图片描述

再推荐一本书:R语言实战,实例讲解,很好懂。
论坛:人大经济学论坛,

0 0