Skip to content
Prev 185712 / 398500 Next

how to count number of elements in a vector that are not NA ?

Thank you for the many replies! This is really a very friendly and
helpful community!
On Tue, Jul 7, 2009 at 3:06 PM, Henrique Dallazuanna<wwwhsd at gmail.com> wrote:
I think the above is what I was looking for since, presumably, it uses
the very same test as other methods that exploit na.*, such as
cor.test.

... so I tried it out and, of course, R's typing trips me over:
[1] 1

Why?  I think I know: q[[51]] is a data frame with 1 component, and
'length' applied to a data frame counts its components.  Not a
problem, I can do:
[1] 110

or
[1] 110

for this data frame of 1 components.

Do other functions act like length()?  Let's look at sum():
[1] 132
[1] 132
[1] 132

Nope.

Easy to get wrong.  I buy the last two, but the first? I assume sum()
applied to a data frame reduces all its elements across all
components(?).  Letting the call "sum(na.omit(q[[51]]))" fail would
have been a sensible design decision too, IMO. One needs to be really
careful in R.

Thank you again,

 - Godmar