Ошибка открытия файла Excel в R с использованием xlsx

Недавно я установил R 3.2.0 (64-разрядная версия Windows) с пакетами xlsx, которые зависят от rJava и xlsxjars. На машине установлена ​​Java 1.8.0_11 64 бит.

Когда я пытаюсь использовать функцию read.xlsx(), я получаю следующую ошибку о zip-файле:

> library(xlsx)
Loading required package: rJava
Loading required package: xlsxjars
> read.xlsx("cameras.xlsx", sheetIndex=1)

Ошибка в .jcall("RJavaTools", "Ljava/lang/Object;", "invokeMethod", cl,: java.util.zip.ZipException: недопустимое расстояние слишком далеко назад

Я точно не знаю, почему он пытается что-то распаковать, если только это не один из jar-файлов, поставляемых с пакетами R. (Zip-файлы, в которые входят пакеты R, отлично распаковываются, когда я делаю это вручную.) Я дважды переустанавливал, но безрезультатно на случай повреждения.

Я чувствую, что где-то есть ошибка конфигурации, но я действительно в тупике. Кто-нибудь еще испытал это? Вот сообщения об установке пакета

> install.packages("xlsx")
Installing package into ‘C:/Users/ggraham412/Documents/R/win-library/3.2’
(as ‘lib’ is unspecified)
also installing the dependencies ‘rJava’, ‘xlsxjars’

trying URL 'http://cran.rstudio.com/bin/windows/contrib/3.2/rJava_0.9-6.zip' 
Content type 'application/zip' length 761928 bytes (744 KB)
downloaded 744 KB

trying URL 'http://cran.rstudio.com/bin/windows/contrib/3.2/xlsxjars_0.6.1.zip'
Content type 'application/zip' length 9485172 bytes (9.0 MB)
downloaded 9.0 MB

trying URL 'http://cran.rstudio.com/bin/windows/contrib/3.2/xlsx_0.5.7.zip'
Content type 'application/zip' length 400857 bytes (391 KB)
downloaded 391 KB

package ‘rJava’ successfully unpacked and MD5 sums checked
package ‘xlsxjars’ successfully unpacked and MD5 sums checked
package ‘xlsx’ successfully unpacked and MD5 sums checked

person Greg Graham    schedule 06.05.2015    source источник
comment
xlsx файлы на самом деле не более чем zip-файлы. Внутри них есть папки и другие файлы. Существуют и другие пакеты для чтения файлов Excel, вы можете попробовать один из них (readxl для пример, который не имеет зависимости от Java)   -  person MrFlick    schedule 06.05.2015
comment
Спасибо! Мой первоначальный поиск был ошибочным; поскольку это был мой первый раз, когда я использовал пакет (и в отсутствие каких-либо очевидных zip-файлов), я просто предположил, что это ошибка конфигурации.   -  person Greg Graham    schedule 06.05.2015


Ответы (1)


Оказывается, это была проблема, описанная здесь: ошибка пакета R xlsx

Не знал, что файл xlsx был доступен zip-библиотеке в описанном выше процессе, и действительно, я не загружал электронную таблицу как двоичный файл.

person Greg Graham    schedule 06.05.2015