Johannes Graumann wrote:

> Hi all,
> 
> I'm to inexperienced to come up with the matrix solution elusively
> appearing on the horizon for the following problem and would appreciate if
> you could give me a nudge ...
> I have two vectors a, and b and need to find the closest match for each
> value of a in b.
> How to do that efficiently?

I am not sure if I understood your problem correctly, 
but maybe this is of help.
However its not memory efficient.

> a <- c(3,10,50,100)
> b <- c(7,8,300)
> b[apply(abs(outer(a,b,"-")),1,which.min)]
[1] 7 8 8 8

In Biobase there is the matchpt function doing this
efficiently.

best wishes,
ido

______________________________________________
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