使用R与tidyquant和massiv数据

问题描述 投票:2回答:2

在使用RI时遇到了一个奇怪的问题:我正在以下列方式处理日期:从数据库中读取数据到数据帧,填充缺失值,将数据分组和嵌套到组合主键,创建时间序列并为每个预测分组,取消组合并清理数据,将其写回数据库。

像这样的东西:qazxsw poi

对于小型数据集来说,这就像一个魅力,但是对于较大的数据集(超过大约100000个条目)我从R-Studio获得“R Session Aborted”屏幕,而nativ R GUI只是停止执行和内爆。我查看的每个日志文件中都没有信息。我怀疑这是某种(泄漏)内存问题。

作为一种解决方法,我正在使用for循环处理数据。但无论块大小多小,我都会得到“R Session Aborted”屏幕,这看起来很像泄漏内存。整个日期包括大约500万行。

我看了很多像https://cran.rstudio.com/web/packages/sweep/vignettes/SW01_Forecasting_Time_Series_Groups.htmlff-Family和big这样的软件包,基本上都是来自matter,但是这个剂量似乎不适合https://cran.r-project.org/web/views/HighPerformanceComputing.htmltibbles数据处理方式。

那么,如何改进我的脚本以处理大量数据?我怎样才能收集有关为什么R会话被中止的线索?

r large-data tidyverse
2个回答
1
投票

查看文章:

data science.拉/大批量涌入-安定-啊-very-BASIC-benchmark

有一个表格显示了您正在执行的一些数据争用任务的运行时比较。从表中可以看出,dplyr背后的data.table可能会比dplyr更好,后面有一个数据帧。

还有一个指向用于制作表格的基准测试代码的链接。

简而言之,尝试添加密钥,并尝试在dataframe上使用data.table。

要使tidyverse成为您的密钥,并将您的data.table命名为x,请使用dt


0
投票

当Pakes回答处理所描述的问题时,我找到了解决潜在问题的方法。出于兼容性原因,我在3.4.3版本中使用了R.现在我正在使用更新的3.5.1版本,它运行得很好。

© www.soinside.com 2019 - 2024. All rights reserved.