将93-2003 Excel工作表(.XLS)加载到Excel R

时间:2016-03-25 17:40:48

标签: r excel

我正在尝试使用xlsx包将excel工作表加载到R中。这些文件保存为旧的97-2003工作表(结尾为.XLS),对于较新的文件,下面的代码工作正常。

df <- read.xlsx(filename,sheetIndex=2)

但是,当我尝试使用旧文件时,我收到错误消息:

.jcall中的错误(“RJavaTools”,“Ljava / lang / Object;”,“invokeMethod”,cl,:   org.apache.poi.hssf.OldExcelFormatException:提供的电子表格似乎是Excel 5.0 / 7.0(BIFF5)格式。 POI仅支持BIFF8格式(来自Excel版本97/2000 / XP / 2003)

我知道错误与旧格式的文件有关,但我不知道如何解决这个问题。我有太多文件来手动更新每个文件。 任何建议将不胜感激!

P.S。抱歉没有添加完全可重现的例子。我不知道如何附加文件以配合我的问题。

1 个答案:

答案 0 :(得分:1)

readxl是读取Excel文件的一种方法。优点是不依赖于Java或其他。

您的代码将是

library(readxl)
df <- read_excel(path = filepath, sheet =2)

它应该与XLS和XLSX文件一起使用。

使用excel_sheets(filepath)获取要导入的工作表的名称,并通过sheet read_excel arg传递它们。如果有帮助,你可以用它来循环。