【问题标题】:Loop boolean: Unequal to NA循环布尔值:不等于 NA
【发布时间】:2013-04-06 02:03:21
【问题描述】:

我想计算数组中不是“NA”的值。

例如我有

array<-c(NA,NA,NA,NA,NA,4,-5.5463)

我认为这会起作用,但它不起作用:

counter<-0
for(i in 1:length(array)){
if(array[i]!=na){
counter<-counter+1
}
}

如何计算这个数组中不是“NA”的值?

【问题讨论】:

    标签: arrays r loops boolean


    【解决方案1】:

    使用is.nasum! 代表“不”:

    > sum(!is.na(array))
    [1] 2
    

    你也可以使用table,如:

    > table(is.na(array))
    
    FALSE  TRUE 
        2     5 
    

    或者,正如@Arun 在 cmets 中建议的那样:

    > length(na.omit(array))
    [1] 2
    

    【讨论】:

    • 或者,length(na.omit(array))
    猜你喜欢
    • 2016-10-23
    • 2011-08-01
    • 2018-12-13
    • 2017-11-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-11
    相关资源
    最近更新 更多