分析文本内容,分词,统计频率,需要安装并装载两个library,一个是Rwordseg,另一个是rJava。rJava的作用是提供java的库,供Rwordseg调用,加载包流程如下:
本机环境:
R是r-3.2.0 32位,可以通过tools-global option查看,java是64位,可以改通过cmd->java -d64 version 查看
1、安装包,install.packages("Rwordseg")
Error:
Warning in install.packages :
package ‘Rwordseg’ is not available (for R version 3.2.0)
2、直接指定下载路径:install.packages("Rwordseg", repos="http://R-Forge.R-project.org")
Error:
installing the source package ‘Rwordseg’
trying URL 'http://R-Forge.R-project.org/src/contrib/Rwordseg_0.2-1.tar.gz'
Content type 'application/x-gzip' length 5445754 bytes (5.2 MB)
downloaded 5.2 MB
* installing *source* package 'Rwordseg' ...
** R
** demo
** inst
** preparing package for lazy loading
Warning: package 'rJava' was built under R version 3.2.3
Error : .onLoad failed in loadNamespace() for 'rJava', details:
call: inDL(x, as.logical(local), as.logical(now), ...)
error: 无法载入共享目标对象‘C:/Program Files/R/R-3.2.0/library/rJava/libs/i386/rJava.dll’::
LoadLibrary failure: %1 不是有效的 Win32 应用程序。
Error : package 'rJava' could not be loaded
ERROR: lazy loading failed for package 'Rwordseg'
* removing 'C:/Program Files/R/R-3.2.0/library/Rwordseg'
Warning in install.packages :
running command '"C:/PROGRA~1/R/R-32~1.0/bin/i386/R" CMD INSTALL -l "C:\Program Files\R\R-3.2.0\library" C:\Users\hzcd\AppData\Local\Temp\RtmpYbJXxo/downloaded_packages/Rwordseg_0.2-1.tar.gz' had status 1
Warning in install.packages :
installation of package ‘Rwordseg’ had non-zero exit status
The downloaded source packages are in
‘C:\Users\hzcd\AppData\Local\Temp\RtmpYbJXxo\downloaded_packages’
原因:
rJava调用需要java运行环境,Error : package 'rJava' could not be loaded,意味着没有java运行环境或java运行环境出了问题。
3、查看rjava
library(rJava)
Error : loadNamespace()里算'rJava'时.onLoad失败了,详细内容:
调用: inDL(x, as.logical(local), as.logical(now), ...)
错误: unable to load shared object 'C:/Program Files/R/R-3.2.0/library/rJava/libs/i386/rJava.dll':
LoadLibrary failure: %1 不是有效的 Win32 应用程序。
In addition: Warning message:
程辑包‘rJava’是用R版本3.2.3 来建造的
Error: ‘rJava’程辑包或名字空间载入失败,
原因:当前系统java环境变量为64位,而32为r需要32位jdk,所以需要安装32位jdk
4、安装32位jdk,并配置rjava环境变量
options(java_home="C:\\Program Files (x86)\\Java\\jdk1.7.0_79\\jre")
Sys.setenv(PATH='C:\\Program Files (x86)\\Java\\jdk1.7.0_79\\jre\\bin\\server')
5、library(rJava)
Warning message:
程辑包‘rJava’是用R版本3.2.3 来建造的
ok,没有影响
6、install.packages("Rwordseg", repos="http://R-Forge.R-project.org")
使用方法:
drv=dbDriver('Oracle')
conn=dbConnect(drv,'acci_tz','acci_tz','192.168.0.0:1521/jgyw')
rst=dbSendQuery(conn,"select t.jyaq from ex_acd_file t ")##简要案情
da=fetch(rst)
write.table(da,file="Mobilecomments.txt",append = FALSE,row.names = TRUE)
segmentCN("Mobilecomments.txt",returnType="tm")
然后在当前路径下查找 .segment.txt文件
成功!