Я регулярно получаю данные от источника, который производит нестандартный формат Excel, который не может быть прочитан readxl::read_excel
. Вот github issue thread. Следовательно, у меня есть полное дерево каталогов, содержащее сотни (почти) файлов Excel, которые я хотел бы прочитать в R, и объединять их с plyr::ldply
. Однако файлы могут быть открыты только на XLConnect::loadWorkbook
. Но, к сожалению, даже при распределении огромных объемов памяти для виртуальной машины Java она всегда сбой после чтения нескольких файлов. Я попытался добавить эти три строки в моей функции импорта:Итеративно сохранять дерево каталогов файлов Excel
options(java.parameters = "-Xmx16g")
detach("package:XLConnect", unload = TRUE)
library(XLConnect)
xlcFreeMemory()
Однако, я все еще получаю:
Error: OutOfMemoryError (Java): Java heap space
Все, что мне нужно сделать, это пересохраните их в Excel, а затем они читают в просто отлично от readxl::read_excel
, Я надеюсь, что смогу также переустановить их в пакетном режиме, используя XLConnect
, а затем прочитайте их, используя readxl::read_excel
. К сожалению, используя Linux, я не могу просто переписать Excel для их сохранения. У кого-нибудь есть другой способ обхода?
Может быть, вы могли бы партию пересохранить XLS с помощью макроса - STH в венах http://answers.microsoft.com/en-us/office/ форум/office_2010-первенствует/как к I-Batch-Convert-сотни-оф-первенствовать-2007/7d608c2e-67fa-48df-94b2-a5b6464d8172 – lukeA