8

我正在尝试从 xlsm 工作簿中将范围读入 data.frame 中。我可以用 R 中的 xlsx 包做到这一点吗?如果没有,有没有人知道如何做到这一点?

谢谢!

4

3 回答 3

9

您是否尝试按照手册中的说明使用 read.xlsx 或 read.xlsx2?

http://cran.r-project.org/web/packages/xlsx/xlsx.pdf

如果这些不适用于您的文件格式,并且您正在尝试访问表格数据,您可能需要打开 .xlsm 并将数据导出为 csv 格式。

这些很容易导入 uisngread.csv('filename.csv')

于 2012-06-26T20:31:49.140 回答
4

R3.2 中的 read.xlsx 将读取保存在 xlsm 工作簿中的数据,但您需要正确的后缀和保存在同一目录(或完整文件名)中的文件,例如

LotsofmydatainRdataframe <- read.xlsx(LotsofmydatainExcel.xlsm,sheetName="Deaths",as.data.frame=TRUE)

如果您只尝试LotsofmydatainExcel 或LotsofmydatainExcel.xlsx 则找不到文件。

令人讨厌的是,以下会在 R 中产生未知格式的 xlsm 错误

write.xlsx(LotsofmydatainRdataframe, LotsofmydatainExcel.xlsm,sheetName="Output")
于 2016-06-03T10:25:50.590 回答
1

为了将来参考(这个问题来自 2012 年),您可以使用 read_excel 包执行此操作,并且在 2015 年添加了 xlsm 支持

read_excel('filename.xlsm', sheet = 'sheetname', range = 'A1:B5')

于 2020-02-25T16:50:14.243 回答