用xlsx导入一个大的Excel工作表
我使用xlsx包中的函数read.xlsx和read.xlsx2从6.3 Mo Excel文件中导入几张Excel工作表。 它曾经工作,但现在我得到一个错误:
library(xlsx) data <- read.xlsx2(file = "file.xlsx", sheetName = "sheet1", encoding = "UTF-8", stringsAsFactors = FALSE, header = TRUE) Error in .jcall("RJavaTools", "Ljava/lang/Object;", "invokeMethod", cl, : java.lang.OutOfMemoryError: Java heap space
我试图在加载rJava之前修改java.parameters ,但没有帮助:
options(java.parameters = "-Xmx2048m") library(xlsx)
我需要使用包xlsx (而不是XLConnect或openxlsx ),因为我需要上述函数的编码参数。
此外,我不想手动(或使用其他编程语言)将我的Excel工作表转换为.csv文件,因为我定期更新这些Excel工作表,我不想一直转换它们。
有没有人有一个想法如何解决?
我在macOS Sierra 10.12.1上使用R版本3.3.2和RStudio版本0.99.903。