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 的内核里面现在应该有选项可以设置的,让你在编译内核的时候,即可完成设置;
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)