使用openxlsx导入多个Excel表

我试图导入一个大的xlsx文件到R有很多数据表。 我试图通过XLConnect来做到这XLConnect ,但Java内存问题(例如在这个线程中描述的问题阻止了这种技术的成功。)

相反,我正在尝试使用openxlsx软件包,这个软件包的读取速度更快,完全避免了Java。 但有没有办法在循环中使用它的read.xlsx函数来读取所有表单到不同的数据框? 我使用的另一个软件包的技术不再有效,像loadWorkbook()getSheets()这样的命令就不能再使用了。

感谢您的帮助。

除了仔细阅读openxlsx的文档之外, 别无所求地将函数sheets()快速导向到函数sheets() ,它声明已弃用而不用返回工作簿中所有工作表名称的names() 。 然后你可以在一个简单的for循环中迭代它们。

我不知道为什么你说loadWorkbook不能使用。 同样,文档清楚地显示了openxlsx中的一个函数,它的名字与XLConnect大致相同,尽pipe它的参数略有不同。

您还可以查看readxl包,该包也没有Java依赖关系。