全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
9560 10
2016-01-18
我需要读取许多个.xls文件,总共内存大概1.85GB,电脑的内存是8G
每次读取的时候,内存在700MB左右就会报错:

错误: OutOfMemoryError (Java): Java heap space

想请问一下这是什么原因呢?
如何解决这个问题呀?
谢谢!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2016-1-19 13:47:16
首先正常8g内存不会出现这个问题。你看一下R里面是不是已经存了大量数据
我们可以通过ls()看work space中有什么变量。
通过object.size()看每个变量占多大内存。
通过memory.size()查看现在的work space的内存使用
通过memory.limit()查看系统规定的内存使用上限。如果你认为现在的内存上限不够用,可以通过memory.limit(newLimit)更改到一个新的上限。 注意,在32位的R中,封顶上限为4G,你无法在一个程序上使用超过4G (数位上限)。这种时候,可以考虑使用64位的版本。

对于一些很大的但无用的中间变量,养成清理的习惯:可以使用rm(object)删除变量,但是记住,rm后记得使用gc()做Garbage collection,否则内存是不会自动释放的,相当于你没做rm.
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-1-19 20:24:00
LY_2009 发表于 2016-1-19 13:47
首先正常8g内存不会出现这个问题。你看一下R里面是不是已经存了大量数据
我们可以通过ls()看work space中有 ...
嗯, 我刚刚试了一下,但是还是不行,workspace里面没有变量。不过刚刚换了一个用了read_excel 的包就可以读了。我怀疑是XLCONNECT那个包调用java的时候对大小做了限制。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-1-20 00:26:11
提示: 作者被禁止或删除 内容自动屏蔽
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-6-20 18:11:43
wangqian151 发表于 2016-1-19 20:24
嗯, 我刚刚试了一下,但是还是不行,workspace里面没有变量。不过刚刚换了一个用了read_excel 的包就可以 ...
对,就是Java本身给设置了大小
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-9-26 11:25:36
我遇到了相似的问题,我是写文件write.csv的时候  内存溢出?求助啊。。每次只能写2000多一点文件。其中好多都是空表 不会占太大内存啊   为什么啊  
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群