我有一个关于在R中使用(Postgre)SQL数据库的问题:关于这个主题的许多文档都强调,只有在处理不适合您的内存中的大数据时才在R中使用SQL数据库才有意义(例如,请参阅这里和这里)。我有一个不同的情况,不知道是否使用Postgre(SQL)数据库将是一个合理的决定。以下是我的情况:
我很好地参与了一项生态研究,在大约2年的时间里,我在不同的采样间隔(5分钟和3h)分析了鹿的gps数据。此外,在采样间隔为4分钟的情况下,我还集成了两个轴加速度数据。
为了评价鹿对人类的行为,我分析了这一多维数据,并将其与在5秒取样间隔内的人类gps数据进行了比较。
到目前为止,我一直在用dplyr使用dataframe/datatable进行分析。当将所有数据合并到一个数据集中时,生成的数据表将变得非常宽。这些列包括人类和鹿的时间戳、ID、X/Y位置、DOP等,以及得到的所有计算值,如距离、速度、高度、邻近度等。
而且,数据非常长:因为多个鹿和多个人类的位置是同时记录的(多到多的关系),这导致了在数据中多次重复。最重要的是,人类和鹿之间不同的取样间隔也会导致重复(鹿的位置)。
我希望有了数据库解决方案,我可以
在我的情况下,你会推荐使用数据库吗?使用数据库解决方案是否有助于实现上述目标?
发布于 2016-05-22 18:51:07
Postgresql提供了酸数据库的所有保护。
我在工作中同时使用R和Postgresql。老实说,我更喜欢数据库中的大多数东西。
相对于您的多到多个数据,加入数据库规范化可能会帮助您。
此外,从相关列的postgresql中选择并对行应用筛选可能会有所帮助。有关选择查询的更多信息,请参见参考文献Postgresql选择教程。
例如
选择column1,column3,从example_table中选择x =y等,并将其读取到数据集中。
数据库更适合处理数据,而R更适合于数据分析。
如果您想查看从R调用Postgresql的命令,可以查看Google的这篇文章。
参考文献RPostgresql
示例loads the PostgreSQL driver drv <- dbDriver("PostgreSQL") Open a connection con <- dbConnect(drv, dbname="R\_Project") Submits a statement rs <- dbSendQuery(con, "select \* from R\_Users")
万事如意
https://stackoverflow.com/questions/37362784
复制相似问题