try this:
a - c(5, 10, 13, 19, 23)
b - c(1, 4, 7, 9, 15)
# use outer for comparison
z - outer(a, b, )
# use rowSums to get the indices (may have to check for zero)
b[rowSums(z)]
[1] 4 9 9 15 15
On Wed, Oct 20, 2010 at 10:41 PM, bruclee brouc...@gmail.com wrote:
I am trying to
I am trying to compare two sorted vectors, all elements in both vectors are
not duplicated. Ex.
a = c[5, 10, 13, 19, 23]
b = c[1, 4, 7, 9, 15]
For each element in a, i need find the max element in b which is smaller
than it, so the short answer will look like [4, 9, 9, 15, 15].
I dont want to use
Hi Bruclee,
?rle may help.
a - c(5, 10, 13, 19, 23)
b - c(1, 4, 7, 9, 15)
ab - data.frame(value = c(a,b), type=c(rep(0,length(a)),rep(1,length(b
ab - ab[order(ab$value),]
ab$v2 - cumsum(ab$type)
ab$matched - rep(ab$value[ab$type==1],rle(ab$v2)$lengths)
(result -
Very Nice! Thanks a lot!
Btw, I think match function should also do the work for the last two
steps. :)
--
View this message in context:
http://r.789695.n4.nabble.com/Help-Using-vectorization-method-for-vectors-comparision-tp3004952p3005032.html
Sent from the R help mailing list archive at
4 matches
Mail list logo