我使用R来运行使用时间序列数据的模拟。我一直使用数组来存储数据,但我需要一种内存密集度较低的解决方案来在中间步骤存储数据,以便记录该过程。我不是一个程序员,所以我正在寻找一些相对容易设置在多个平台上,如果可能的话(Windows,Mac,Linux)。我还需要能够直接从R调用数据库,因为现在学习另一种语言是不可行的。理想情况下,我希望能够以类似于数组的方式频繁地读写数据库,尽管我不知道这是否现实。我很乐意牺牲速度来换取易用性,但我愿意努力学习开源解决方案。如有任何建议,我们将不胜感激。
发布于 2010-07-18 21:11:19
我还需要能够直接从R调用数据库
我建议设置带有RMySQL接口的MySQL。
一旦DB连接打开,您就可以查询数据库并将数据放入R中,例如:
# 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。
发布于 2010-07-18 21:30:29
快速评论:
上速度非常快
发布于 2010-07-18 21:36:48
您真的需要数据库解决方案来满足您的需求吗?您说您想要一个“在中间步骤存储数据的解决方案”--简单地在所需的时间点将数据数组保存到磁盘怎么样?
编辑:为了能够检索信息,您可以在文件名中嵌入元信息,例如试验索引和/或时间戳。然后,您可以使用正确的文件名查找和加载该文件。
https://stackoverflow.com/questions/3266351
复制相似问题