一、使用Rstudio连接mysql数据库
我们经常存储大量的数据MySQL在这样的数据库中,我们可以方便地提取和操作数据。很多时候,当我们使用R进行数据分析时,我们通常希望R能够直接和mysql数据库连接方便我们直接处理大规模数据。mysql结构化数据存储在中间。
有些朋友在使用R连接mysql当数据库遇到一些问题时,本文重点关注mysql例如,介绍如何使用R连接mysql数据源的基本步骤。具体步骤如下:
1、R下载RODBC包,安装好。
install packages("RODBC"); #安装RODBC包
3、控制面板--->管理工具--->数据源(ODBC)(根据计算机选择32位和64位)--->点击添加--->选中mysql ODBC driver选项(Unicode和ANSI任意选择一个)。
data source name(DSN数据源名称)填入你想要使用的名字,例如:mysql_data;
description 例如,可以随意填写mydata
TCP/IP Server 本机服务器IP,一般为:127.0.0.1或者localhost
user 你的mysql用户名
password 你的mysql密码
然后你会出现在数据库中。mysql在所有数据库中,选择一个数据库。
4.打开R界面调用数据库:(我用的是RStudio)
(1)library(RODBC);
(2)channel
(3)sqlTables(channel); #查看数据库中的表
(4)data
5、至此,R已经成功与mysql数据库连接并获取mysql库中niesheng数据库里titanicdata表中的数据。
6.既然可以连接到数据库,也可以在R中使用SQL数据处理和数据提取语句。
例1:存储年龄不为空的数据data1数据集中。
data1 'null';
例2:是否幸存survived、阶级class、性别sex 都转换为1、0这样的数值,便于后面进行分析。
Titanic
fromtitanicdatatwhereage<>'null'ORDERBYsurvived,age;");
7、R不仅可以连接mysql,还可以连接其他数据源,包括Access、Excel、SQLServer数据库等。详情请参考R中的数据库odbcConnect具体用法。
二、 安装RODBC库
1.进入R语言GUI界面(RGUI.EXE),在菜单栏中选择程序包/安装程序包
2.向下拉弹出窗口,选择RODBC如图所示,点击确定
3、在ODBC在数据源管理器中添加所需的数据库,作者在这里使用它SQL Server选择2008驱动程序Native Client10.0
4.在R语言窗口输入连接句library(RODBC)
**这里是载入RODBC库channel
**刚接刚刚添加到数据源中的MyTest”数据库
ch
表示用户名user,密码是**,如果没有设置,可以直接忽略data(USArrests)
**将“USArrests表写入数据库(这个表是R自带的)sqlSave(channel,USArrests,rownames = "state",addPK = TRUE)
**将数据流保存,这时候打开SQL Server你可以看到新建的USArrests表了rm(USArrests)
sqlTables(channel)
**给出数据库中的表sqlFetch(channel,"USArrests",rownames = "state")
**输出USArrests表中的内容sqlQuery(channel,"select * from USArrests")
**调用SELECT查询句子并返回结果(如图所示)sqlDrop(channel,"USArrests")
**删除表odbcClose(channel)
**最后,记得关闭连接
当然,这种方法也可以读取Excel、Access具体方法类似于表中的内容,这里不再重复