R中的MemoryError,而read.xlsx

我使用以下R代码(利用Java参数来增加内存):

library(xlsx) options(java.parameters = "-Xmx1g") library(XLConnect) NiVe <- read.xlsx("version1.xlsx",1) 

version1.xlsx文件大小为13 MB。 我收到以下错误:

 Error in .jcall("RJavaTools", "Ljava/lang/Object;", "invokeMethod", cl, : java.lang.OutOfMemoryError: Java heap space 

有人可以帮忙吗?

尝试使用以下命令增加java堆大小(足够):

 options(java.parameters = "-Xmx1000m") 

如果您使用32位R,请确保您也使用32位Java,如果您使用64位R,请确保您也使用64位Java。 如果您收到Java堆空间消息,指示内存不足,请参阅此post 。

这个线程可以帮助你,使用垃圾收集。

参考:
exchanging_data_between_r_and_ms_windows_apps_excel_etc
统计-rosuda-devel_001621

您应该确保任何JVM初始化之前,即在加载XLConnect或xlsx软件包之前设置Java参数。 请注意,在您的情况下,您使用的是read.xlsx函数,该函数不是XLConnect函数,因此不需要XLConnect包。 XLConnect替代方案是readWorksheetFromFile函数。

试试这个: – 可能这可行。 它对我有用

1)下载xlsx文件时,请使用此download.file(fileURL,destfile =“./ whatever”,mode =“wb”)

2)切换到常规R,而不是R Studio,