R 与0或NA比较的If-else语句
我在数据帧tmp中有一个元素,它可能包含数字、0或NA。如果该元素既不是0也不是NA,我希望发生一些事情。否则,什么也不会发生。我想是这样的:R 与0或NA比较的If-else语句,r,if-statement,R,If Statement,我在数据帧tmp中有一个元素,它可能包含数字、0或NA。如果该元素既不是0也不是NA,我希望发生一些事情。否则,什么也不会发生。我想是这样的: if ( tmp[2, 19] != (0 || NA) ){ do something } 我得到了这个错误:if中的错误(tmp[2,19]==(0 | | NA)){:缺少需要TRUE/FALSE的值。我不知道在R中是否无法将某个值与int和字符串进行比较,或者我只是使用了or运算
if ( tmp[2, 19] != (0 || NA) ){
do something
}
我得到了这个错误:if中的错误(tmp[2,19]==(0 | | NA)){:缺少需要TRUE/FALSE的值。我不知道在R中是否无法将某个值与int和字符串进行比较,或者我只是使用了or运算符。我在不同的情况下尝试了不同的变体,但无法确定问题所在。请帮助!正如@GSee在评论中所说,您需要使用
is.na代码>:
if(tmp[2, 19] != 0 || is.na(tmp[2, 19])) {
# do stuff
}
您可以通过阅读?“如果”
和?NA
如@GSee在评论中所说,您需要使用is.NA
:
if(tmp[2, 19] != 0 || is.na(tmp[2, 19])) {
# do stuff
}
您可以通过阅读?“if”
和?NA
来发现这一点