我正在尝试使用以下代码填充数据框中的列(ADRPD)中的空值。但它不起作用。
data$ADRPD[is.na(data$ADRPD)]= "medium"
这是错误:
Warning message:
In `[<-.factor`(`*tmp*`, is.na(data$ADRPD), value = c(2L, 2L, 2L, :
invalid factor level, NA generated
有什么建议吗?
答案 0 :(得分:0)
您的语法不正确。使用此作为参考:
http://adv-r.had.co.nz/Subsetting.html
或者:
for(i in 1:length(data$ADRPD)){
if(is.na(data$ADRPD[[i]]) == true){
data$ADRPD[[i]] <- c("some-constant")
}
}
答案 1 :(得分:0)
问题是缺失的数据被保存为空白而不是NA。首先我将空格转换为空值,然后我将数据更改为字符为“yaw&#39;说过。这是我的代码:
data = read.csv(file.choose(), header = TRUE, na.strings=c("","NA"))
data$ADRPD = as.character(data$ADRPD)
data$ADRPD[is.na(data$ADRPD)]= "medium"
谢谢。