我有一个矢量:
a<-c("Yes","No","No","Yes",NA)
我想算一下有多少是:
length(a[a=="Yes"])
为什么答案3?我怎样才能得到正确的答案?
答案 0 :(得分:3)
查看中间步骤:
a<-c("Yes","No","No","Yes",NA)
length(a[a=="Yes"])
[1] 3
a=="Yes"
[1] TRUE FALSE FALSE TRUE NA
a[a=="Yes"]
[1] "Yes" "Yes" NA
这说明为什么你得到3作为答案; NA不能被转换为真值或假值,R总是将其评估为NA。获得正确答案的简单方法是
sum(na.omit(a=="Yes"))
[1] 2