Java调用R语言
来源:互联网 发布:软件开发公司账务处理 编辑:程序博客网 时间:2024/06/01 07:42
1、安装R语言
版本:R-3.1.3, 只有此版本CRAN同时包含RMySQL、rmongodb
设置环境变量$R_HOME为D:\lang\R\R-3.1.3
2、安装RStudio,可以通过它安装需要的包
3、配置Rserve
进入$R_HOME/library/Rserve/libs/i386或$R_HOME\library\Rserve\libs\x64
执行 R CMD Rserve --RS-enable-remote 后启动Rserve服务
4、Java代码中调用R
String RServerIP = "localhost";RConnection rc = RUtil.getInstance(RServerIP);rc.assign("arg1", projectId.toString());rc.eval("source('"+path+"Get_Files_MySQL_Mongodb.R')");rc.eval("Get_Files_MySQL_Mongodb(arg1)");rc.eval("rm(list=ls())");
5、R调用MySQL和MongoDB
library(DBI)library(RMySQL)library(rmongodb)# arg1 : projectIdGet_Files_MySQL_Mongodb <- function(arg1) {## mySQL conn <- dbConnect(MySQL(), host='127.0.0.1', port=3306, username="root",password="passw0rd",dbname="demo") dbSendQuery(conn,'SET NAMES gbk') queryString <- paste("select * from t_datafile where projectid = ", arg1, " && fileid != '' " ) rs <- dbSendQuery(conn, queryString) dat <- fetch(rs) dat dbClearResult(rs) dbDisconnect(conn) ## collect data fileid <- dat[,c("fileid")] size <- length(fileid)## mongodb mongo <- mongo.create(host="127.0.0.1:27017") if (mongo.is.connected(mongo)) { gridfs <- mongo.gridfs.create(mongo, "accenture") i <- 1 while( i < size ){ print(fileid[i]) i <- i + 1 buf <- mongo.bson.buffer.create() mongo.bson.buffer.append(buf, "_id", mongo.oid.from.string(fileid[i]) ) query <- mongo.bson.from.buffer(buf) gf <- mongo.gridfs.find(gridfs, query) if( !is.null(gf) ){ print(mongo.gridfile.get.filename(gf)) filename <- mongo.gridfile.get.filename(gf) # and pipe it to an R connection object filename_path <- paste("./scdata/" ,filename, sep="") mongo.gridfs.remove.file(gridfs, filename_path) filename_csv <- file(filename_path) mongo.gridfile.pipe(gf, filename_csv) mongo.gridfile.destroy(gf) i } } mongo.gridfs.destroy(gridfs) }}rmResource <- function(){ rm(list=ls()) }Get_Files_MySQL_Mongodb(20)
阅读全文
0 0
- JAVA调用R语言
- JAVA调用R语言
- java 调用R语言
- JAVA调用R语言
- Java调用R语言
- JAVA调用R语言
- Reserve java调用R语言
- java调用R语言之调用
- Java与R语言的配置,调用
- JAVA调用R语言之安装
- java调用R语言--以Rserve方式
- java调用R语言实现神经网络
- JAVA调用R语言之Rserve
- 在java中调用R语言
- 【配置】使用Java调用R语言
- Java调用其他编程语言C、R
- R环境搭建及java调用R语言
- python调用R语言
- android中的定时任务
- 关于QueryRunner的使用
- mysql安装(mysql5.7-yum)
- 写入、读出数据
- Intellij IDEA 14中使用MyBatis-generator 自动生成MyBatis代码
- Java调用R语言
- angularjs实现省市二级菜单(可以选择默认值)
- 选择合适的电阻型分压器
- 线程与cpu进行绑定——006非常全面
- its MIME type ('text/html') is not executable, and strict MIME type checking is enabled.
- Required String parameter is not present 或 Unsupported Media Type
- 客户端简单位置同步
- [常见Bug]Kotlin,编译报错“Unresolved reference: ......”的解决方法
- Kruskal算法求最小生成树的c++代码实现