On Wed, Jan 05, 2011 at 07:16:47PM +0000, Kevin Ummel wrote:
> Two posts in one day is not a good day...and this question seems like it 
> should have an obvious answer:
> 
> I have a matrix where rows are unique combinations of 1's and 0's:
> 
> > combs=as.matrix(expand.grid(c(0,1),c(0,1)))
> > combs
>      Var1 Var2
> [1,]    0    0
> [2,]    1    0
> [3,]    0    1
> [4,]    1    1
> 
> I want a single function that will give the row index containing an exact 
> match with vector x:
> 
> > x=c(0,1)
> 
> The solution needs to be applied many times, so I need something quick -- I 
> was hoping a base function would do it, but I'm drawing a blank.

If the matrix can have different number of columns, then
also the following can be used

  combs <- as.matrix(expand.grid(c(0,1),c(0,1),c(0,1)))
  x <- c(0,1,1)
  which(rowSums(combs != rep(x, each=nrow(combs))) == 0) # [1] 7

Petr Savicky.

______________________________________________
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