rJava配置
1. 下载安装R-3.1.1-win.exe;
2. 在R中安装rJava
> install.packages("rJava")
3. 设置环境变量:
PATH:D:\SoftWare\Java\jdk1..0_45\jre\bin\server;D:\SoftWare\Java\R\R311\bin\x64
CLASSPATH:D:\SoftWare\Java\R\R311\library\rJava\jri
4. 在R中调用Java 测试:
> library(rJava)
> .jinit()
> s <- .jnew("java/lang/String", "Hello World!")
> s
一切配置成功则出现:
[] "Java-Object{Hello World!}"
#加载rJava包
> library(rJava)
> search()
[] ".GlobalEnv" "package:rJava" "package:stats"
[] "package:graphics" "package:grDevices" "package:utils"
[] "package:datasets" "package:methods" "Autoloads"
[] "package:base" #启动JVM
> .jinit() #声明并赋值到字符串
> s <- .jnew("java/lang/String", "Hello World!")
> s
[] "Java-Object{Hello World!}" #查看字符串长度
> .jcall(s,"I","length")
[] #索引World的位置
> .jcall(s,"I","indexOf","World")
[] #查看concat的方法声明
> .jmethods(s,"concat")
[] "public java.lang.String java.lang.String.concat(java.lang.String)" #使用concat方法连接字符串
> .jcall(s,"Ljava/lang/String;","concat",s)
[] "Hello World!Hello World!" #打印字符串对象
> print(s)
[] "Java-Object{Hello World!}" #打印字符串值
> .jstrVal(s)
[] "Hello World!"
rJava优化过的方法调用,用$来调用方法
#同.jcall(s,"I","length")
> s$length()
[] #同.jcall(s,"I","indexOf","World")
> s$indexOf("World")
[]
5. 安装Rserve
> install.packages("Rserve")
需要使用时在R控制台下加载该包,然后输入命令Rserve(),开启服务器,就可以供客户端调用。
6. ubuntu系统启动Rserve
$ R CMD Rserve
#查看进程
$ ps -aux|grep Rserve
conan 0.0 1.2 ? Ss : : /usr/lib/R/bin/Rserve #查看端口
$ netstat -nltp|grep Rserve
tcp 127.0.0.1: 0.0.0.0:* LISTEN /Rserve
这时Rserve已经启动,端口是6311。
7. Java远程连接Rserve
刚刚启动时,使用的本地模式,如果想运程连接需要增加参数 –RS-enable-remote
#杀掉刚才的Rserve守护进程
$ kill - #打开远程模式重新启动
~ R CMD Rserve --RS-enable-remote #查看端口
$ netstat -nltp|grep Rserve
tcp 0.0.0.0: 0.0.0.0:* LISTEN /Rserve
0 0.0.0.0:6311,表示不限IP访问了。
rJava配置的更多相关文章
- R语言·文本挖掘︱Rwordseg/rJava两包的安装(安到吐血)
每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- R语言·文本挖掘︱Rwordseg/rJava ...
- RHive
R + Hive = RHive 支持原创:http://blog.fens.me/nosql-r-hive/ R利剑NoSQL系列文章 之 Hive Hive介绍 Hive安装 RHive安装 RH ...
- 转】R利剑NoSQL系列文章 之 Hive
原博文出自于: http://blog.fens.me/category/%E6%95%B0%E6%8D%AE%E5%BA%93/page/3/ 感谢! Posted: Jul 27, 2013 Ta ...
- Java调用R——rJava的安装和配置
rJava是Java通过JRI调用R所要安装的包.配置起来比较麻烦,我参考网上进行配置,使用rJava包中example里面的示例测试,控制台显示: Cannot find JRI native li ...
- R语言rJava包安装载入及JAVA环境配置
rJava 包的安装与载入 一般文本分词的教程都会贴出: install.packages("rJava") library(rJava) 来引导我们装载rJava包,运行inst ...
- R,RJAVA 安装配置 详细版
准备工作 系统必须已经安装JDK 并配置好了环境变量. 注:安装的jdk r 以及系统 尽量保持位数一致 1.下载 R https://mirrors.tuna.tsinghua.edu.cn ...
- 配置RHadoop与运行WordCount例子
1.安装R语言环境 su -c 'rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch. ...
- R语言成功加载rJava方法
加载rJava的同时,要下载JAVA的JRE并且配置环境变量JAVA_HOME,因为rJava的调用需要java运行环境. 1.下载JRE 64位版本的JRE官网下载:http://www.java. ...
- Error : .onLoad failed in loadNamespace() for 'rJava', details: call: inDL(x, as.logical(local), as.logical(now), ...) error: 无法载入共享目标对象‘D:/Program Files/R/R-3.2.2/library/rJava/libs/x64/rJava.dll
Error : .onLoad failed in loadNamespace() for 'rJava', details: call: inDL(x, as.logical(local), as. ...
随机推荐
- 前端工作流程自动化——Grunt/Gulp 自动化
什么是自动化 先来说说为什么要自动化.凡是要考虑到自动化时,你所做的工作必然是存在很多重复乏味的劳作,很有必要通过程序来完成这些任务.这样一来就可以解放生产力,将更多的精力和时间投入到更多有意义的事情 ...
- php中simplexml_load_string使用实例
先用一段代码重现一下问题 乍一看,结果很让人费解: 代码如下 复制代码 <?php $string = <<<EOF <data> <foo><b ...
- ie、IE兼容模式,提示SCRIPT1028: 缺少标识符、字符串或数字
旧版ie下json最后一项是不允许有逗号的 为了更好的兼容各个浏览器,json最后的逗号最好不加
- 20101102--SQL字符串函数 ,日期和时间函数
--------------------字符串函数------------------------- --ASCII 返回字符串的首字母的ASCII编码 select ASCII('w') selec ...
- js_event.keycode值大全
onkeydown 当用户按下键盘按键时触发onkeypress 当用户按下字面键时触发 onkeyup 当用户释放键盘按键时触发 =============================== ...
- (转)RabbitMQ消息队列(五):Routing 消息路由
上篇文章中,我们构建了一个简单的日志系统.接下来,我们将丰富它:能够使用不同的severity来监听不同等级的log.比如我们希望只有error的log才保存到磁盘上. 1. Bindings绑定 上 ...
- C++为了兼容,所以并不是纯面向对象编程语言
理想如果不向现实做点妥协,理想就会归于尘土.面向对象怎能把一切传统抛开!
- HDU1022 Train Problem I 栈的模拟
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1042 栈的模拟,题目大意是已知元素次序, 判断出栈次序是否合理. 需要考虑到各种情况, 分类处理. 常 ...
- [翻译.每月一译.每日一段]Exploring Fonts with DirectWrite and Modern C++
Windows with C++ Exploring Fonts with DirectWrite and Modern C++ Kenny Kerr DirectWrite is an incred ...
- The breakpoint will not currently be hit. No symbols have been loaded for this document."
C# exe calls function from a native C++ DLL, and breakpoints set inside C++ source code cannot be hi ...