【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

这里是一个广告位,,感兴趣的都可以发邮件聊聊:tiehan@sina.cn
个人公众号,比较懒,很少更新,可以在上面提问题,如果回复不及时,可发邮件给我: tiehan@sina.cn