我有一个数据框,我想根据之前列中的记录创建一个具有 0/1 的新列(这将代表一个物种的缺席/存在)。我一直在尝试这个:
update_cat$bobpresent <- NA #creating the new column
x <- c("update_cat$bob1999", "update_cat$bob2000", "update_cat$bob2001","update_cat$bob2002", "update_cat$bob2003", "update_cat$bob2004", "update_cat$bob2005", "update_cat$bob2006","update_cat$bob2007", "update_cat$bob2008", "update_cat$bob2009") #these are the names of the columns I want the new column to base its results in
bobpresent <- function(x){
if(x==NA)
return(0)
else
return(1)
} # if all the previous columns are NA then the new column should be 0, otherwise it should be 1
update_cat$bobpresence <- sapply(update_cat$bobpresent, bobpresent) #将函数应用到新列
一切都很顺利,直到我收到此错误的最后一个字符串:
Error in if (x == NA) return(0) else return(1) :
missing value where TRUE/FALSE needed
有人可以给我建议吗?您的帮助将不胜感激。