Rstudio操作数据库
来源:互联网 发布:js删除数组第二个元素 编辑:程序博客网 时间:2024/05/20 18:01
有些朋友在使用R连接mysql等数据库的时候会遇到一些问题,因而本文着重以mysql为例,介绍如何利用R连接mysql数据源的基本步骤。具体步骤如下:
1、R下载RODBC包,安装好。
installpackages("RODBC");#安装RODBC包
下载mySQL ODBC,安装好。
填写:data source name(DSN数据源名称) 一项填入你想要使用的名字,例如:mysql_data;
description一项随意填写,例如mydata
TCP/IP Server 填写本机服务器IP,一般为:127.0.0.1或者localhost
user 填写你的mysql用户名
password 填写你的mysql密码
然后数据库里会出现你的mysql里的所有数据库,选择一个数据库。
1 library(RODBC);
2 channel <- odbcConnect("mysql_data", uid="root", pwd="123456");
3 sqlTables(channel); #查看数据库中的表
4 data<-sqlFetch(channel,"titanicdata"); # 将表titanicdata的内容,存到数据框data里
5、至此,R已经成功与mysql数据库连接,并且获取了mysql库中niesheng数据库里titanicdata表中的数据。
6、既然能够连接上数据库,那么在R中同样可以使用SQL语句进行数据处理和数据提取。
例1:将年龄不为空的数据存入data1数据集中。
data1 <- sqlQuery(channel, "selectsurvived, age, class, sex from titanicdata where age<> 'null';
例2:将是否幸存survived、阶级class、性别sex 都转换为1、0这样的数值,便于后面进行分析。
Titanic <- sqlQuery(channel, "select (CASE WHEN t.survived='yes' THEN 1 ELSE 0 END) survived, age,
(case when t.class='1st' then 1 when t.class='2st' then 2 else 3 end) class,
(case when t.sex='male' then 1 else 0 end) sex
from titanicdata t where age<> 'null' ORDER BY survived,age;");
7、R不仅可以连接mysql,还能连接其他数据源,包括Access、Excel、SQLServer数据库等。具体可以参考R中的odbcConnect的具体用法。
一、 安装RODBC库
1、进入R语言的GUI界面(RGUI.EXE),在菜单栏选择“程序包/安装程序包
2、在弹出的窗口里往下拉,选择RODBC如图,点击确定
3、在ODBC数据源管理器里将需要的数据库添加进去,这里笔者使用的是SQL Server2008,驱动程序选择Native Client10.0
3、在R语言窗口输入连接语句
> library(RODBC)
**这里是载入RODBC库
> channel<-odbcConnect("MyTest",uid="ripley",case="tolower")
**连接刚才添加进数据源的“MyTest”数据库
**ch <- odbcConnect("some dsn ", uid = "user ", pwd = "**** ")
**表示用户名为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表中的内容,具体方法类似,这里不再重复
- Rstudio操作数据库
- RStudio 快捷键操作
- RStudio连接Oracle数据库
- R编辑器Rstudio学习笔记——基本功能与操作
- R编辑器Rstudio学习笔记——基本功能与操作
- R编辑器Rstudio学习笔记——基本功能与操作
- R语言十八讲(二)—Rstudio基础操作
- Rstudio学习笔记——基本功能与操作
- Rstudio 清屏
- Rstudio shortcuts
- Rstudio快捷键
- RStudio快捷键
- RStudio 调试
- RStudio快捷键
- RStudio-假设检验
- R:RStudio和RStudio Server
- RStudio入门教程(二)RStudio数据处理
- 操作数据库
- JavaScript笔记:作用域闭包
- Serverless Single Page Apps:Fast, Scalable, and Available(读书笔记)
- Linux添加信任关系的方法
- coredump和core文件
- Android学会属性动画的基本用法(上)
- Rstudio操作数据库
- 版本更新演示代码
- Android Studio导入SlidingMenu的两种方法(超详细)
- rhel firefox
- JAVA 使用QQ发送邮件
- 计算天数差,日期格式
- iOS-根据银行卡号判断银行名称
- 用互联网思维装神弄鬼
- <<重构改善既有的代码设计>>第一章节