使用XLConnect读入xls

时间:2016-09-13 12:51:49

标签: r excel

我正在使用以下代码尝试阅读旧的xls文件

library("XLConnect")
path <- "C:/Users/foo/Desktop/WEEK 17.xls"
df <- readWorksheet(path, sheet = 1)

我收到以下错误

  

(函数(classes,fdef,mtable)中的错误:     无法为签名'“character”,“numeric”'

找到函数'readWorksheet'的继承方法

有谁知道为什么? 我可以在excel中打开文件

1 个答案:

答案 0 :(得分:3)

这是因为readWorksheet使用workbook作为object

你必须

# Load workbook
wb <- loadWorkbook("C:/Users/foo/Desktop/WEEK 17.xls")

然后

df <- readWorksheet(wb, sheet = 1)

或使用 readWorksheetFromFile("C:/Users/foo/Desktop/WEEK 17.xls", sheet = 1)

哪个真正做同样的

> XLConnect::readWorksheetFromFile
function (file, ...) 
{
    args <- list(...)
    args$object <- loadWorkbook(file, create = FALSE)
    do.call("readWorksheet", args)
}
<environment: namespace:XLConnect>