在.jnew错误中的write.xlsx错误和R中的j.check错误
我试图用write.xlsx写523370行和3列的数据框
write.xlsx(x = dataframe, file = "dataframe.xlsx", + sheetName = "dataframe1", row.names = FALSE)
但我得到这个错误:
Error in .jnew("org/apache/poi/xssf/usermodel/XSSFWorkbook") : Java Exception <no description because toString() failed>.jnew("org/apache/poi/xssf/usermodel/XSSFWorkbook")<S4 object of class "jobjRef">
我检查这些问题:
- 如何清除rJava使用的内存? :
xlcFreeMemory()
,然后尝试写入文件,但经过相当长的时间后,我得到相同的错误 - R使用XLSX包编写excel文件需要花费很长时间和错误 :
write.xlsx2()
给了我同样的错误,在运行这个之后:options(java.parameters = "-Xmx1024m")
并重新启动系统
但是那改变了错误改为:
Error in .jcheck(silent = FALSE) :Java Exception <no description because toString() failed>.jcall(row[[ir]], "Lorg/apache/poi/ss/usermodel/Cell;", "createCell", as.integer(colIndex[ic] - 1))<S4 object of class "jobjRef">
我有同样的问题,重新启动R
做的伎俩。
如果您使用的是RStudio
,则重新启动R的按键快捷键为Ctrl + Shift + F10 (PC)或Command + Shift + F10 (Mac)。
如果问题仍然存在,可以使用read.csv()
,然后保存它和一个xlsx文件。