Я пытаюсь заменить данные в нескольких листах существующей рабочей книги Excel (есть несколько листов с формулами, которые остаются нетронутыми).Я использую пакет XLConnect для того же.Идея состоит в том, чтобы прочитать существующую рабочую книгу, очистить данные в необходимых листах, а затем записать в них новые кадры данных.После этого файл сохраняется как в качестве начальной версии, так и в качестве другой версии с датой.Однако выполнение синтаксиса saveWorkbook занимает много времени и в итоге выдает следующую ошибку Ошибка: OutOfMemoryError (Java): пространство кучи Java
Я установил rJava и также запустил следующее: options (java.parameters = "-Xmx2048m")
Есть ли альтернативный способ сделать это?
Ниже приведен код:
xlWb <- loadWorkbook("C:\\\\Users\\z003b1d\\Desktop\\Drop_Data_DB2_Template.xlsx")
wbnames <- as.vector(getSheets(xlWb)) ##sheetNames
очищает данные в существующем шаблоне
clearSheet(xlWb, sheet= c("Dept Var to Prior Day-FC RDC", "Dept Var to Prior Day-BP UDC", "Dept Var to Prior Day-BP", "Dept Var to Prior Day - FC UDC", "Drop_Data_DB2", "Forecasts"))
перезаписывает данные на необходимые листы
writeWorksheet(xlWb,list(i1= rdc_finalsorted, i2= udc_finalsorted, i3= rdc_bpr_finalsorted, i4= udc_fcs_finalsorted, i5= data, i6= forecast) , sheet= c("Dept Var to Prior Day-FC RDC", "Dept Var to Prior Day-BP UDC", "Dept Var to Prior Day-BP", "Dept Var to Prior Day - FC UDC", "Drop_Data_DB2", "Forecasts"), startRow =1, startCol =1, header= T, rownames = NULL)
сохраняет рабочую книгу
saveWorkbook(xlWb,"C:\\\\Users\\z003b1d\\Desktop\\Drop_Data_DB2_Template.xlsx")
создает версию с сегодняшней датой
saveWorkbook(xlWb, paste0("C:\\\\Users\\z003b1d\\Desktop\\Drop_Data_DB2_",Sys.Date(),".xlsx"))