Сообщение об ошибке при попытке записать xlsx.-файл с помощью R - PullRequest
2 голосов
/ 26 марта 2012

Я пытаюсь сохранить некоторые R-dataframes в .xlsx-файлы, используя функцию write.xlsx пакета xlsx, как это

write.xlsx(tab,file="test",sheetName="testsheet",col.names=TRUE,row.names=FALSE,append=FALSE)

, тогда как объект tab является фреймом данных, как показано здесь

> class(tab)
[1] "data.frame"

Когда я запускаю код, я получаю следующее сообщение об ошибке

>  write.xlsx(tab,file="test.xlsx",sheetName="testsheet",col.names=TRUE,row.names=FALSE,append=FALSE)
Fehler in .jcall("RJavaTools", "Z", "hasField", .jcast(x, "java/lang/Object"),  : 
  RcallMethod: cannot determine object class

и я понятия не имею, в чем может быть проблема.

PS: я использую R 2.14.1 в плагине StatET 2.0 в Eclipse 3.7 на 64-битной машине.

Ответы [ 2 ]

2 голосов
/ 03 августа 2012

По моему опыту, такого рода ошибки возникают, когда установлен стандартный пакет rj вместо того, который поставляется разработчиком StatET.Ознакомьтесь с руководством по установке здесь: http://www.walware.de/goto/statet

Если вы используете Debian или Ubuntu, вы также можете использовать репозиторий из OpenAnalytics для установки StatET и правильных пакетов rj за один раз.

http://deb.openanalytics.eu/howto.html

2 голосов
/ 26 марта 2012

Когда вы работаете в Eclipse, вы можете запустить R, используя либо rj - терминал Java, либо RTerm - собственный терминал R.

Если вы используете терминал rj и что-то ещене работает, попробуйте то же самое с RTerm.

Я никогда не пытался понять, почему, но некоторые вещи не работают должным образом в rj.Это включает в себя все использование RCOM, а также печать возвращаемого значения system().

Я использую rj по умолчанию, потому что мне нравится, как он справляется со справкой (среди прочих преимуществ).
Но если что-то не работает, я пробую это в RTerm.Однажды у меня будет немного свободного времени, и я возьму его с автором.


PS.Хочу подчеркнуть, что я очень люблю StatET в Eclipse.Эти странности или rj являются очень незначительными неудобствами в великой схеме вещей.

...