使用XLConnect读取包含缺失值的.xls文件

时间:2013-10-03 22:29:47

标签: r excel

使用XLConnect读取.xls文件时,如何设置缺失值。与na.string==c()中的read.csv参数类似。

我目前的R代码如下:

install.packages("XLConnect")
library(XLConnect)

excel.file <- file.path(".../FakeData.xls")
fake2 <- readWorksheetFromFile(excel.file, sheet="Sheet1", header=TRUE)

我的虚假数据如下所示:

ID  Age Weight      Gender
1   30  55          M
2   22  NA          F
3   33  80          NA

我希望我的NA值被解释为缺失,因此权重和性别分别作为数字/因子变量读入R中。目前,由于NA值,它们正在转换为字符变量。

当我尝试:

setMissingValue(fake2, value = c("NA"))

我收到以下错误:

Error in (function (classes, fdef, mtable)  : 
unable to find an inherited method for function ‘setMissingValue’ for signature ‘"data.frame"’

1 个答案:

答案 0 :(得分:5)

您必须在工作簿对象上调用setMissingValue而不是文件名。

wb <- loadWorkbook(excel.file)
setMissingValue(wb, value = c(""))

fake2 <- readWorksheet(wb, sheet="Sheet1", header=TRUE)