【5.1】需要TRUE/FALSE值的地方不可以用缺少值

报错:

> for (i in 1:nrow(d)){if (d$phylum[i]=="Cyanobacteria") {d$tax.color[i]<-100}}

错误于if (d$phylum[i] == “Cyanobacteria”) { : 需要TRUE/FALSE值的地方不可以用缺少值

原因:

if得到的必须是TRUE/FALSE,我得到了NA

d$phylum=="Cyanobacteria" 发现出来的结果有FALSE,有TRUE,有NA,一检查果真是有空白值

解决办法:

d$phylum[is.na(d$phylum)]<-0
> for (i in 1:nrow(d)){if (d$phylum[i]=="Cyanobacteria") {d$tax.color[i]<-100}}
for (i in 1:nrow(d)){if (d$phylum[i]==0) {d$phylum[i]<-NA}};

参考资料:

http://f.dataguru.cn/thread-480-1-1.html

个人公众号,比较懒,很少更新,可以在上面提问题:

更多精彩,请移步公众号阅读:

Sam avatar
About Sam
专注生物信息 专注转化医学