R语言与C#/Java的整合方法简介


一、R语言与C#的整合

简介

Rserve是一个基于TCP/IP协议的,允许R语言与其他语言通信的C/S结构的程序,支持C/C++,Java,PHP,Python,Ruby,Nodejs等。Rserve提供远程连接,认证,文件传输等功能。我们可以设计R做为后台服务,处理统计建模,数据分析,绘图等的任务。

Rserve在Linux系统下可以同时建立多个连接,但是在Windows下只允许同时打开一个连接,后续的连接都会共有相同的命名空间。官网上不建议在Windows下使用Rserve,因为会丧失很多性能,他们推荐可以考虑DCOM的方式。不过DCOM那个工程没有现成的jar包可用,其实如果是拿R做分析系统中的运算引擎,单连接够用了。

特性

安装使用简单。在R控制台输入library("Rserve").、Rserve()即可启动,这时可以退出R;
通过TCP/IP方式支持多种语言。客户端有:Java(REngine Java client)、C++、Python、C#、Ruby。RServe 默认端口6311。客户端与RServe之间是以二进制方式传输,因此支持文件传输
每个连接有自己独立的工作目录和命名空间
虽然支持Windows平台,但是不建议在该平台下使用。由于Windows不支持进程fork,因此在Windows下RServe不支持多连接。如果不得不用Windows平台可考虑使用R的DCOM接口;

客户端

Rserve官网推荐的C#客户端主要有RserveCLI和RserveLink。但是RserveLink很长时间没有维护,最后一次更新于2013-03-19。 RserveCLI也由于作者不采用Windows平台停止维护,最新的客户端转由另一开源作者维护RserveCLI2。
下载后即可运行测试代码

步骤

step1: 进入R语言的平台,输入 install.packages("Rserve")命令进行下载安装
step2: 安装后在R语言的平台中输入library(Rserve)命令载入Rserve的包
step3: 在R平台中输入Rserve()命令启动Rserve。通过查看任务管理器即可看到Rserve.exe的进程已经启动。
step4: 启动VS2015,从https://github.com/SurajGupta/RserveCLI2 下载项目和示例代码打开项目。
step5: 编写代码并运行 

rc#1.png 
二、R语言与Java的整合


客户端

Rserve官网推荐的Java客户端是REngine

步骤

step1: 进入R语言的平台,输入 install.packages("Rserve")命令进行下载安装
step2: 安装后在R语言的平台中输入library(Rserve)命令载入Rserve的包
step3: 在R平台中输入Rserve()命令启动Rserve。通过查看任务管理器即可看到Rserve.exe的进程已经启动。
step4: 启动Eclipse,从http://www.rforge.net/Rserve/files/ 下载REngine.jar和RserveEngine.jar加到项目的library里。
step5: 编写测试代码并运行 

在R中安装Rserve的同时安装目录中也自动安装了java、c++、php的示例文件,进入相应的安装目录即可查看自带的示例。运行后的效果如下图所示:

rjava1.png 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值