5

「XLConnect」パッケージを使用してExcelファイルをRに読み込もうとすると、以下のエラーが一貫して発生しません。

Error in ls(envir = envir, all.names = private) : 
invalid 'envir' argument

パッケージ「xlsx」や「xlsReadWrite」などのExcelファイルを読み取る他のパッケージを使用しているときに、実際にこのエラーに遭遇しました。多くの場合、R セッションを再起動するとこの問題が解決します。これにより、R セッションで行っている他の何かが環境を変更し、Excel ファイルを読み込めなくなっていると考えるようになります。以下は、このエラーの原因となっているコードの最新の例です。この場合、次のコーディング シーケンスによってエラーが表示されることがわかっていますが、なぜそうなるのでしょうか? chron パッケージが必要な場合、どうすればこのエラーを回避できますか。

library("XLConnect")
wb2 <- loadWorkbook("excel_file", create = FALSE)
library(chron)
wb2 <- loadWorkbook("excel_file", create = FALSE)

以前にこの問題に遭遇した人はいますか? この問題に関するヘルプは大歓迎です!

4

2 に答える 2

1

ワークブックを再度開く前に、以前に開いたものへの参照を削除してみてください: rm(wb2) wb2 <- loadWorkbook("excel_file", create = FALSE)

また、R テストの実行中に「excel_file」が Excel やその他のプログラムで開かれていないことを確認してください。

XLConnect を使用しているときに同じエラーが発生するのを見たことがありますが、上記が役立つようです。

于 2013-10-04T15:49:13.830 に答える
1

この問題が数回発生し、「OutOfMemory」例外がスローされたときにこのメッセージが生成されるようにコール スタックが表示されます。

私が使用したこの問題を解決するために:

options( java.parameters = "-Xmx4g" )

rJava が使用できるヒープ サイズを増やします。

options(error=utils::recover)R のエラー メッセージはあまり具体的ではないため、デバッグは大いに役立ちました。

于 2016-09-22T11:00:42.117 に答える