What is the concern if it works?  you can also do

sum(x==0)

Is performance a concern?  How often are you going to do it and what
other parts of your script also take longer?  Why are you concerned
about allocating/discarding two vectors?

On Fri, Jan 4, 2013 at 10:30 AM, Sam Steingold <s...@gnu.org> wrote:
> Hi,
> to count vector elements with some property, the standard idiom seems to
> be length(which):
> --8<---------------cut here---------------start------------->8---
> x <- c(1,1,0,0,0)
> count.0 <- length(which(x == 0))
> --8<---------------cut here---------------end--------------->8---
> however, this approach allocates and discards 2 vectors: a logical
> vector of length=length(x) and an integer vector in which.
> is there a cheaper alternative?
> Thanks!
>
> --
> Sam Steingold (http://sds.podval.org/) on Ubuntu 12.04 (precise) X 
> 11.0.11103000
> http://www.childpsy.net/ http://iris.org.il http://honestreporting.com
> http://jihadwatch.org http://pmw.org.il 
> http://www.PetitionOnline.com/tap12009/
> War doesn't determine who's right, just who's left.
>
> ______________________________________________
> 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.



-- 
Jim Holtman
Data Munger Guru

What is the problem that you are trying to solve?
Tell me what you want to do, not how you want to do it.

______________________________________________
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