[R] multiple match question

Kevin Bartz kbartz at loyaltymatrix.com
Wed Sep 29 18:40:32 CEST 2004


Marc Mamin wrote:
> Hello,
> 
>  I'm looking for a fast way to retrieve the position of elements  from a vector which match element in another vector.
> 
> Example
> 
> va<-c('a','e')
> vb<-c('a','b','c','d','e','f','e')
> 
> f(va,vb) should return c(1,5,7)
> 
> I have 2 different cases: 
> 
> I) my vector vb contains only distinct values
> II) my vector vb may contains the same values more than once.
> 
> for I) I use following which is fast enough:
> 
> 	as.vector(na.omit(unlist(lapply(va,match,vb))))
> 
> Thanks for any help,
> 
> Marc
> 
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
> 

Hi Marc,

How about this?

which(vb %in% va)

Let me know if you have any more questions.

Kevin




More information about the R-help mailing list