问题标签 [r-bigmemory]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - 为什么我的采样没有节省计算时间?
我试图减少计算数据集中所有变量之间的相关性所需的时间。它是一个庞大的数据集,超过 100K 列和超过 50K 行。每个变量都保存在自己的文件中,因此需要遍历文件。
我试图通过对行进行采样来减少计算时间。我选择了 1000 行,而不是使用所有 50K 行。
但是,无论我做 100 行还是 50,000 行,计算相关系数仍然需要相同的时间。我对 50 个变量进行了测试。
关于如何让这个任务运行得更快有什么建议吗?以我目前的计算能力,运行这个脚本可能需要一年多的时间。
下面是我的脚本:
r - 如何在 R 中使用大内存数据执行 Hmisc::rcorr()?
我需要Hmisc::rcorr()
用大内存data.table
执行(各种前面的函数和子集都需要这种格式)。可以在给定的 RAM 中读取和加载 ( fread()
) 对象,但rcorr()
操作最终会失败:
> Error: cannot allocate vector of size 1.2 Gb
因此,我已经转移到各种包来处理大内存数据。我最初尝试过bigmemory
,但无法开始:
然后我搬到disk.frame
了没有成功:
我还尝试disk.frame
在将 转换data.table
为矩阵后创建一个,但它不接受data.frame
类对象以外的任何内容。
我感谢提供的任何帮助。
r - 使用disk.frame,但仍然达到内存限制问题
问题:
我正在尝试对大型数据集执行相关性测试:data.table
可以存在于内存中,但对其进行操作时会遇到内存限制Hmisc::rcorr()
或corrr::correlate()
最终会遇到内存限制。
所以,我转而使用 filebackeddisk.frame
包来解决这个问题,但我仍然达到了内存限制。
任何关于如何使用disk.frame
或处理大内存的包来实现这一点的建议都非常感谢。
两者都rcorr()
对correlate()
整个数据集进行操作。数据集包含NA
值,因此我需要使用这些函数,因为它们允许使用"pairwise.complete.obs"
.
尝试:
r - R bigmemory:脚本执行后如何访问矩阵/保存在共享内存中
我使用该bigmemory
包将一个非常大的矩阵放入共享内存中(请参见下面的脚本,因此它可以由其他 R 会话中的脚本并行访问。
我现在想以非交互方式执行脚本。问题是,如果我使用 运行它,矩阵会在进程结束Rscript
后立即从共享内存中删除。Rscript
我可以添加Sys.sleep(99999)
到脚本的末尾,但我想知道是否有更好的方法来完成这个。有任何想法吗?