百分百源码网-让建站变得如此简单! 登录 注册 签到领金币!

主页 | 如何升级VIP | TAG标签

当前位置: 主页>网站教程>服务器> R语言中使用SQL数据库干货分享
分享文章到:

R语言中使用SQL数据库干货分享

发布时间:01/15 来源: 浏览: 关键词:
R语言中连接SQL数据库需要安装其它的扩展包,我们可以选择ODBC方式还是DBI方式,当然安装的驱动会不同,本文会详细讲解。

数据分析经常需要从外部获得数据。很多情况下数据存放在关系型数据库中。一般我们可以用SQL来提取需要的数据,存为文本再由R来读入。这种方式结合了数据库的储存能力和R的分析能力,速度也非常快。但是如果要形成一套可重复性的自动工作流程,则可以将R与外部数据库连接,直接在R中操作数据库,并生成最终结果,这也是一种可行的方法。

  在R中连接数据库需要安装其它的扩展包,根据连接方式不同我们有两种选择:一种是ODBC方式,需要安装RODBC包并安装ODBC驱动。另一种是DBI方式,可以根据已经安装的数据库类型来安装相应的驱动。因为后者保留了各数据库原本的特性,所以个人比较偏好用DBI连接方式。有下面这几种主要的包提供了DBI连接:RMySQL,RSQLite,ROracle,RPostgreSQL。由名字看得出它们分别对应了几种主流的数据库。

  这几种数据库中SQLite是一个轻量级的数据库,完全免费,使用方便,不需要安装,无须任何配置,也不需要管理员。如果只需要本地单机操作,用它来配合R来存取数据是非常方便的。下面来看看R中操作SQLite数据库的示例。

  从零开始:

  1、下载SQLite,它是一个单独的执行文件,并且是在命令行下操作。如果不习惯可以安装sqlitebrowser之类的GUI。先把它放到一个文件夹中,例如sqlite。

  2、在sqlite中执行sql脚本,建立一个数据库。将脚本文件放到同一个文件夹中,然后执行下面的。现在文件夹中应该有train.db这个数据库文件了。

  .read Scheme.sql

  .read Data.sql

  .backup train.db

  3、在R中安装RSQlite包

  install.packages('RSQlite')

  4、加载RSQlite包,建立连接后用SQL读取数据

  library(RSQLite)

  # 建立连接,注意数据库类型和文件地址

  con <- dbConnect('SQLite', dbname='d:/sqlite/train.db')

  # 观察数据库中有三个数据表格

  dbListTables(con)

  # 观察其中一个表的字段

  dbListFields(con, 'Apply')

  # 写一段SQL语句,来选取需要的数据

  sql <- "select sName, GPA, decision ,cName

  from Student, Apply

  where Student.sID = Apply.sID

  and sizeHS < 1000 and major = 'CS' and cName = 'Stanford'"

  # 将选取的数据存入到data中,同时显示出来

  (data <- dbGetQuery(con, sql))

  # 关闭数据库连接

  dbDisconnect(con)

  R中还有一个有趣的sqldf包,它可以让你用SQL来操作dataframe,这种功能能让会R的人能练习SQL,会SQL的人能练习R。最后介绍一个非常好的数据库视频教程和一本教材,对于初学SQL的人会非常有帮助。

打赏

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

百分百源码网 建议打赏1~10元,土豪随意,感谢您的阅读!

共有5人阅读,期待你的评论!发表评论
昵称: 网址: 验证码: 点击我更换图片
最新评论

本文标签

广告赞助

能出一分力是一分吧!

订阅获得更多模板

本文标签

广告赞助

订阅获得更多模板