-1

There is a vector of numbers like

c(3,10,24,29,37)->k

and a table

    c(1,3)->l1
    c(9,12)->l2
    c(24,27)->l3
rbind(l1,l2)->ll
rbind(ll,l3)->l3

   [,1] [,2]
l1    1    3
l2    9   12
l3   24   27

how can I find which of the numbers in the vector are in the range of the table. Here the result would be 3,24 and 10. Maybe just the indices of these numbers...

heinwe
  • 9
  • 1
  • 7

1 Answers1

1

You can try sapply with any and the conditional statements:

indx <- sapply(k, function(x) any(x >= l3[,1] & x <= l3[,2]))
k[indx]
[1]  3 10 24
Pierre L
  • 28,203
  • 6
  • 47
  • 69
  • is there any chance for a speed up? My table is like 60k lines and it takes really long (waiting over 15 minu now) – heinwe Jan 27 '16 at 05:19