首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >对带R的数据库的建议

问对带R的数据库的建议
EN

Stack Overflow用户
提问于 2010-07-16 23:18:40
回答 4查看 9K关注 0票数 12

我使用R来运行使用时间序列数据的模拟。我一直使用数组来存储数据,但我需要一种内存密集度较低的解决方案来在中间步骤存储数据,以便记录该过程。我不是一个程序员,所以我正在寻找一些相对容易设置在多个平台上,如果可能的话(Windows,Mac,Linux)。我还需要能够直接从R调用数据库,因为现在学习另一种语言是不可行的。理想情况下,我希望能够以类似于数组的方式频繁地读写数据库,尽管我不知道这是否现实。我很乐意牺牲速度来换取易用性,但我愿意努力学习开源解决方案。如有任何建议,我们将不胜感激。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-07-18 21:11:19

我还需要能够直接从R调用数据库

我建议设置带有RMySQL接口的MySQL。

一旦DB连接打开,您就可以查询数据库并将数据放入R中,例如:

代码语言:javascript
复制
# Run an SQL statement by creating first a resultSet object
rs <- dbSendQuery(con, statement = paste(
                      "SELECT w.laser_id, w.wavelength, p.cut_off",
                      "FROM WL w, PURGE P",
                      "WHERE w.laser_id = p.laser_id",
                      "SORT BY w.laser_id")
# we now fetch records from the resultSet into a data.frame
data <- fetch(rs, n = -1)   # extract all rows

:MySQL数据库的R接口

用于R的

数据库接口和MySQL驱动程序。此版本符合DBI0.2-2包中实现的数据库接口定义。

MySQL数据库:

可用于您在问题中引用的所有平台,以及更多,请下载here。

票数 3
EN

Stack Overflow用户

发布于 2010-07-18 21:30:29

快速评论:

  • R擅长这一点,作为一种用于数据编程的语言,有大量的interfaces
  • There是专门用于数据导入/导出的整个manual,并且它有一个section on relational databases,所以从这里开始。
  • R具有广泛使用的DBI包,它为许多后端提供了统一的接口,其中包括SQLite,MySQL,PostgreSQL,Oracle,...利用这一点,也许可以通过RSQLite让事情更快地进行下去。您仍然可以切换后端afterwards.
  • There也是RODBC,但我发现使用ODBC很乏味。
  • R还有一个由Paul Gilbert编写的专门的TSdbi包变体,它为timeseries数据库带来了类似DBI的抽象。它还支持为此编写的多个backends.
  • The data.table包,并且在索引和aggregation.

上速度非常快

票数 15
EN

Stack Overflow用户

发布于 2010-07-18 21:36:48

您真的需要数据库解决方案来满足您的需求吗?您说您想要一个“在中间步骤存储数据的解决方案”--简单地在所需的时间点将数据数组保存到磁盘怎么样?

编辑:为了能够检索信息,您可以在文件名中嵌入元信息,例如试验索引和/或时间戳。然后,您可以使用正确的文件名查找和加载该文件。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3266351

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档