R读取大型数据集内存不足如何解决,如果利用Linux有什么有效方法吗?

R读取大型数据集内存不足如何解决,如果利用Linux有什么有效方法吗?,第1张

有个比较简单暴力的方法是fread里的nrows参数设置。

R所有读取数据的函数都有nrows和skip这两个参数,可以写个循环,一个文件分段读取,skip跳过前面读过的,用nrows控制最大读入行数,防止内存不足。

分段处理之后将文件写入本地,用rm将比较大的变量消除掉,用gc()释放这部分内存。

——好处是简单粗暴多平台可用,缺点是,真的很慢……

如果有条件还是建议申请个服务器来跑,比如学生可以询问导师院系有没有用于大型计算的服务器。

另外Unix系统对内存的限制确实是比Windows好些,可惜我也不知道正确的打开方式QAQ

可以。出现r语言内存不足的问题很常见,可以在windows中对数据的虚拟内存进行适当上限的调整。r语言是属于GNU系统的一个自由、免费、源代码开放的软件,它是一个用于统计计算和统计制图的优秀工具。

1, 你是说内存不够用么?一般很少有这个问题,因为linux本身对内存要求并不高。增加内存,并重新给你的 swap 分下区吧,设置为你物理内存的两倍;

2,你是想改 linux kernel 和 user space 的 1:3 分配比例么?可以使用某些补丁来改成 2:2 之类的,2.6 的内核里面现在应该有选项可以设置的,让你在编译内核的时候,即可完成设置;


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8748694.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-20
下一篇 2023-04-20

发表评论

登录后才能评论

评论列表(0条)

保存