13

次の 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

誰か助けてくれませんか?

4

3 に答える 3

19

次を使用して、Javaヒープサイズ(十分)を増やしてみてください。

options(java.parameters = "-Xmx1000m")

32ビットRを使用している場合は、32ビットJavaも使用していることを確認してください。また、64ビットRを使用している場合は、64ビットJavaも使用していることを確認してください。メモリ不足を示すJavaヒープスペースメッセージが表示された場合は、この投稿を参照してください。

このスレッドは、ガベージコレクションを使用するのに役立つ場合があります。

参照: exchangeing_data_between_r_and_ms_windows_apps_excel_etc stats-
rosuda
-devel_001621

于 2012-09-27T16:20:55.090 に答える
7

JVM を初期化する前、つまり XLConnect または xlsx パッケージをロードする前に、Java パラメータを設定していることを確認する必要があります。あなたの場合、XLConnect関数ではないread.xlsx関数を使用しているため、XLConnectパッケージは必要ないことに注意してください。XLConnect の代替は関数readWorksheetFromFileです。

于 2012-09-28T15:55:46.503 に答える