如何用R语言连接和管理MYSQL数据库

Python024

如何用R语言连接和管理MYSQL数据库,第1张

首先在开始菜单打开控制面板。点击开始,选择右侧的控制面板。

在控制面板中,以所有控制面板的格式查看,选择管理工具,并打开。

在管理工具中,可以看到有个数据源(ODBC),打开数据源。

在数据源管理面板中,选择添加,由于我这里已经添加了一个数据源,只是介绍一下操作。

根据自己的数据库,选择相应的驱动,比如我这里是MYSQL ODBC 5.3。点击完成,进行下一步的配置。

这里根据提示,填写相应的字段即可。最后点击OK,由于这里没有填写任何字段,所以OK按钮是灰色的。

打开R软件,数据源设置好了之后,还要加载RODBC包。如果没有安装,参考经验“R语言关于R包的管理:安装加载查看,移除,卸载”。回车之后没有错误提示便是成功了。

这是在Rstudio中显示的,之前自己处理的时候一直是在excel中处理完再用R来直接分析。

现在想问问R里有什么直接处理的好办法。

在R中,有三个函数工具可以解决条件异常处理(包括错误)问题:

try() 如果出现错误,使用该函数可以跳过错误继续执行程序。

tryCatch() 指定控制条件,进行异常捕捉,然后采用对应的函数处理异常和错误。

withCallingHandlers() 是tryCatch()的变体,只是运行的上下文条件不同,它使用的情况很少,但是非常有用。

可以。

(一) 在R里下载“Rserve”包,并安装

安装好后,

运行如下命令启动“Rserver”

>library(Rserve)

>Rserve()

Starting Rserve...

"D:\PROGRA~1\R\R-30~1.1\library\Rserve\libs\i386\Rserve.exe"

>

(二) 建立java工程,导入必要的包,写出测试用例

目录结构如下(标红色的是需要的):

Test.java 内容

package com.rTest

import org.rosuda.REngine.REXP

import org.rosuda.REngine.Rserve.RConnection

public class Test {

public static void main(String[] args) {

try {

RConnection c = new RConnection()

REXP x = c.eval("R.version.string")

System.out.println(x.asString())

} catch (Exception e) {

e.printStackTrace()

}

}

}

运行即可

2.3 可能出现的错误

2.3.1 Connection refused: connect

org.rosuda.REngine.Rserve.RserveException: Cannot connect: Connection refused: connect

at org.rosuda.REngine.Rserve.RConnection.<init>(RConnection.java:88)

at org.rosuda.REngine.Rserve.RConnection.<init>(RConnection.java:60)

at org.rosuda.REngine.Rserve.RConnection.<init>(RConnection.java:44)

at com.rTest.Test.main(Test.java:9)

这是由于“Rserve” 服务器没有启动起来的原因,试试在R内运行如下语句

>library(Rserve)

>Rserve()