帐号: 密码:
// 设为首页 // 收藏本站 // 请您留言 // 网址导航
远方教程-满足你的求知欲!
站内搜索:
HTML ASP PHP CSS DIV Dreamweaver Photoshop Word Excel PPT SEO技巧
您当前位置:网站首页 >> 统计之窗 >> R语言专区 >> 阅读文章

R技巧[26]:需要TRUE/FALSE值的地方不可以用缺少值

来源:远方教程 作者:远方教程 发布时间:2016-12-24 查看次数:34666 访问[新版]

   我们在运行R程序的时候,有时候会出现:需要TRUE/FALSE值的地方不可以用缺少值

这样的错误提示。但是,检查自己的程序,却没发现错误。其实,产生这个错误的原因出现在if语句的返回值上。

  先看下面一个例子:

> 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}}

  这也提醒我们,在写if语句时,可以先判断一下是不是会有NA返回值。具体方法见R技巧[25]:R判断NaN

打印 打印 | 关闭 关闭 评论
相关文章
图片新闻
站内搜索  
搜索
猜您喜欢  
最新更新  
阅读排行  
关于我们 | 联系方式 | 大事记 | 免责声明 | | 给我留言
部分广告源自金山联盟2345联盟 QQ咨询 站长之家QQ群:232617873
Copyright 2024 远方教程 © All Rights Reserved.

回顶部