我不确定为什么会这样。我正在尝试使用xlsx包加载大约180个.xlsx文件。我已经运行了代码,我认为会加载所有文件(不同的名称,但相同的格式),并从每个文件中提取3行。见下文:
f <- list.files("./")
dat = lapply(f, function(i){
x = read.xlsx(i, sheetIndex=1, sheetName=NULL, startRow=127,
endRow=130, as.data.frame=TRUE, header=T)
# You may want to add a column to say which file they're from
x$file = i
# Return your data
x
})
我收到以下错误
.jcall错误(&#34; RJavaTools&#34;,&#34; Ljava / lang / Object;&#34;,&#34; invokeMethod&#34;,cl,: java.lang.IllegalArgumentException:您的InputStream既不是OLE2流也不是OOXML流
我已经在我的MAC上更新了JAVA但是没有用。
有人建议吗?
Anoop
答案 0 :(得分:0)
您尝试阅读的文件可能不是xlsx文件。 我在读取xlsx格式的文件时遇到了同样的错误。 当我尝试用read.csv()读取相同的文件时,它工作正常。所以它表明我试图读取的文件不是xlsx格式。
答案 1 :(得分:0)
可能是您正在加载已打开的文件。该文件在指定目录中具有相同的扩展名。