Pesquisa de intervalo em um quadro de dados
Eu tenho um quadro de dados de séries temporais e valores. As séries temporais são segundos da época. Veja como os primeiros elementos aparecem nesse quadro de dados
val = seq(1,19)
ts = seq(1342980888,1342982000,by=60)
x = data.frame(ts = ts,val = val)
head(x)
ts val
1 1342980888 1
2 1342980948 2
3 1342981008 3
4 1342981068 4
5 1342981128 5
6 1342981188 6
Eu gostaria de algum tipo de função de busca de intervalo que recebe como entrada um registro de data e hora 1342980889 (+1 o ts na primeira linha) e deve retornar 1,2 (o número da linha) como saída. Basicamente, eu quero encontrar as duas linhas que possuem data e hora que suportam a data e hora de entrada 1342980889. Embora isso seja relativamente fácil de usar usando "which", eu suspeito "o que" faz uma varredura vetorial e como o quadro de dados real é bastante grande eu quero fazer isso usando uma pesquisa binária. Muito obrigado antecipadamente