As long as there are no negative numbers, method2 and 3 works:
 test[1]<- -1
length(which(test==0))
#[1] 6
 length(which(test<1))
#[1] 7
 length(which(test < .Machine$double.xmin))
#[1] 7

length(which(abs(test)<1))
#[1] 6
 length(which(abs(test) < .Machine$double.xmin))
#[1] 6
A.K.




----- Original Message -----
From: "Suzen, Mehmet" <msu...@gmail.com>
To: Hermann Norpois <hnorp...@googlemail.com>
Cc: R help <r-help@r-project.org>
Sent: Friday, January 4, 2013 12:27 AM
Subject: Re: [R] count appearence of zero in a vector

Hi Hermann,

You may want to use ?which, to store the index as well (might be handy
in debugging or some other
purposes if zeros has some special meaning) :

test <- c(1, 1, 1 , 1 , 1, 1, 2, 1, 1, 1, 0, 2, 0, 1, 1, 0, 0, 0, 1,
1, 1, 0, 1, 2, 1, 1, 1, 1, 1, 1)
length(which(test==0))

But be careful when using == 0. If you are sure that elements are all
integers I prefer this

length(which(test <1)).

Or a safe tolerance value from .Machine, if you are dealing with double numbers.

length(which(test < .Machine$double.xmin))


-m

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.


______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to