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.