Licença
This work is licensed under the Creative Commons
Attribution-ShareAlike 4.0 International License. To view a copy of this
license, visit http://creativecommons.org/licenses/by-sa/4.0/ or send a
letter to Creative Commons, PO Box 1866, Mountain View, CA 94042,
USA.
License: CC BY-SA 4.0
Citação
Sugestão de citação: FIGUEIREDO, Adriano Marcos Rodrigues. Dica de
uso da função findInterval()
. Campo Grande-MS,Brasil:
RStudio/Rpubs, 2023. Disponível em http://rpubs.com/amrofi/dica_findInterval.
Introdução
Esta função findInterval()
retorna os índices ou a
posição do índice de um número x
em um determinado vetor
vec
.
É uma função nativa do R. Segue o exemplo.
Exemplo
Neste caso, seja a série x sequencial de 2 a 18. Estabelecemos um
intervalo para 5≤x<10 e
outro para 10≤x<15.
Portanto, a função retornará uma classe 0 para x < 5, o valor 1
para entre 5 e 10, a classe 2 para entre 10 e 15, e classe 3 para acima
de 15. Atentar para os intervalos aberto e fechado [5,10) e [10,15).
x <- 2:18
v <- c(5, 10, 15)
cbind(x, findInterval(x, v))
x
[1,] 2 0
[2,] 3 0
[3,] 4 0
[4,] 5 1
[5,] 6 1
[6,] 7 1
[7,] 8 1
[8,] 9 1
[9,] 10 2
[10,] 11 2
[11,] 12 2
[12,] 13 2
[13,] 14 2
[14,] 15 3
[15,] 16 3
[16,] 17 3
[17,] 18 3
Agora vou adicionar 1 para que as classes sejam numeradas a partir de
1 e classe fator.
x <- 2:18
v <- c(5, 10, 15)
dados <- cbind(x, classe = factor(1 + findInterval(x, v)))
dados
x classe
[1,] 2 1
[2,] 3 1
[3,] 4 1
[4,] 5 2
[5,] 6 2
[6,] 7 2
[7,] 8 2
[8,] 9 2
[9,] 10 3
[10,] 11 3
[11,] 12 3
[12,] 13 3
[13,] 14 3
[14,] 15 4
[15,] 16 4
[16,] 17 4
[17,] 18 4
Referências
Allaire, JJ, Yihui Xie, Christophe Dervieux, Jonathan McPherson, Javier
Luraschi, Kevin Ushey, Aron Atkins, et al. 2023. Rmarkdown: Dynamic
Documents for r.
R Core Team. 2023.
R: A Language and Environment for Statistical
Computing. Vienna, Austria: R Foundation for Statistical Computing.
https://www.R-project.org/.
Xie, Yihui. 2014. “Knitr: A Comprehensive Tool for Reproducible
Research in R.” In Implementing Reproducible
Computational Research, edited by Victoria Stodden, Friedrich
Leisch, and Roger D. Peng. Chapman; Hall/CRC.
———. 2015.
Dynamic Documents with R and Knitr. 2nd
ed. Boca Raton, Florida: Chapman; Hall/CRC.
https://yihui.org/knitr/.
———. 2016.
Bookdown: Authoring Books and Technical Documents with
R Markdown. Boca Raton, Florida: Chapman; Hall/CRC.
https://bookdown.org/yihui/bookdown.
———. 2022.
Bookdown: Authoring Books and Technical Documents with r
Markdown.
https://CRAN.R-project.org/package=bookdown.
———. 2023.
Knitr: A General-Purpose Package for Dynamic Report
Generation in r.
https://yihui.org/knitr/.
Xie, Yihui, J. J. Allaire, and Garrett Grolemund. 2018.
R Markdown:
The Definitive Guide. Boca Raton, Florida: Chapman; Hall/CRC.
https://bookdown.org/yihui/rmarkdown.
Xie, Yihui, Christophe Dervieux, and Emily Riederer. 2020.
R
Markdown Cookbook. Boca Raton, Florida: Chapman; Hall/CRC.
https://bookdown.org/yihui/rmarkdown-cookbook.
LS0tDQp0aXRsZTogIkRpY2EgZGUgdXNvIGRhIGZ1bsOnw6NvIGZpbmRJbnRlcnZhbCgpIg0KYXV0aG9yOiAiQWRyaWFubyBNYXJjb3MgUm9kcmlndWVzIEZpZ3VlaXJlZG8sICplLW1haWw6IGFkcmlhbm8uZmlndWVpcmVkb0B1Zm1zLmJyKiINCmxpbmtjb2xvcjogYmx1ZQ0KYWJzdHJhY3Q6IA0KICBUaGlzIGlzIGFuIGV4ZXJjaXNlIGZvciBjbGFzcyB1c2UuIA0KZGF0ZTogImByIGZvcm1hdChTeXMuRGF0ZSgpLCAnJWQgJUIgJVknKWAiDQpiaWJsaW9ncmFwaHk6IHBhY2thZ2VzLmJpYg0Kbm9jaXRlOiAnQConDQpvdXRwdXQ6DQogIGh0bWxfZG9jdW1lbnQ6DQogICAgY29kZV9kb3dubG9hZDogdHJ1ZQ0KICAgIHRoZW1lOiBkZWZhdWx0DQogICAgbnVtYmVyX3NlY3Rpb25zOiB0cnVlDQogICAgdG9jOiB5ZXMNCiAgICB0b2NfZmxvYXQ6IG5vDQogICAgZGZfcHJpbnQ6IHBhZ2VkDQogICAgZmlnX2NhcHRpb246IHRydWUNCi0tLQ0KDQpgYGB7ciBrbml0cl9pbml0LCBlY2hvPUZBTFNFLCBjYWNoZT1GQUxTRX0NCmxpYnJhcnkoa25pdHIpDQpsaWJyYXJ5KHJtYXJrZG93bikNCmxpYnJhcnkocm1kZm9ybWF0cykNCg0KIyMgR2xvYmFsIG9wdGlvbnMNCm9wdGlvbnMobWF4LnByaW50PSIxMDAiKQ0Kb3B0c19jaHVuayRzZXQoZWNobz1UUlVFLA0KCSAgICAgICAgICAgICBjYWNoZT1GLA0KICAgICAgICAgICAgICAgcHJvbXB0PUZBTFNFLA0KICAgICAgICAgICAgICAgdGlkeT1UUlVFLA0KICAgICAgICAgICAgICAgY29tbWVudD1OQSwNCiAgICAgICAgICAgICAgIG1lc3NhZ2U9RkFMU0UsDQogICAgICAgICAgICAgICB3YXJuaW5nPUZBTFNFKQ0Kb3B0c19rbml0JHNldCh3aWR0aD0xMDApDQpgYGANCg0KIyBMaWNlbsOnYSB7I0xpY2Vuw6dhIC51bm51bWJlcmVkfQ0KDQpUaGlzIHdvcmsgaXMgbGljZW5zZWQgdW5kZXIgdGhlIENyZWF0aXZlIENvbW1vbnMgQXR0cmlidXRpb24tU2hhcmVBbGlrZSA0LjAgSW50ZXJuYXRpb25hbCBMaWNlbnNlLiBUbyB2aWV3IGEgY29weSBvZiB0aGlzIGxpY2Vuc2UsIHZpc2l0IDxodHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy9saWNlbnNlcy9ieS1zYS80LjAvPiBvciBzZW5kIGEgbGV0dGVyIHRvIENyZWF0aXZlIENvbW1vbnMsIFBPIEJveCAxODY2LCBNb3VudGFpbiBWaWV3LCBDQSA5NDA0MiwgVVNBLg0KDQohW0xpY2Vuc2U6IENDIEJZLVNBIDQuMF0oaHR0cHM6Ly9taXJyb3JzLmNyZWF0aXZlY29tbW9ucy5vcmcvcHJlc3NraXQvYnV0dG9ucy84OHgzMS9wbmcvYnktc2EucG5nKXt3aWR0aD0iMjUlIn0NCg0KIyBDaXRhw6fDo28geyNDaXRhw6fDo28gLnVubnVtYmVyZWR9DQoNClN1Z2VzdMOjbyBkZSBjaXRhw6fDo286IEZJR1VFSVJFRE8sIEFkcmlhbm8gTWFyY29zIFJvZHJpZ3Vlcy4gRGljYSBkZSB1c28gZGEgZnVuw6fDo28gYGZpbmRJbnRlcnZhbCgpYC4gQ2FtcG8gR3JhbmRlLU1TLEJyYXNpbDogUlN0dWRpby9ScHVicywgMjAyMy4gRGlzcG9uw612ZWwgZW0gPGh0dHA6Ly9ycHVicy5jb20vYW1yb2ZpL2RpY2FfZmluZEludGVydmFsPi4NCg0KIyBJbnRyb2R1w6fDo28NCg0KRXN0YSAgZnVuw6fDo28gYGZpbmRJbnRlcnZhbCgpYCByZXRvcm5hIG9zIMOtbmRpY2VzIG91IGEgcG9zacOnw6NvIGRvIMOtbmRpY2UgZGUgdW0gbsO6bWVybyBgeGAgZW0gdW0gZGV0ZXJtaW5hZG8gdmV0b3IgYHZlY2AuDQogICAgIA0Kw4kgdW1hIGZ1bsOnw6NvIG5hdGl2YSBkbyBSLiBTZWd1ZSBvIGV4ZW1wbG8uICAgIA0KDQojIEV4ZW1wbG8NCg0KTmVzdGUgY2Fzbywgc2VqYSBhIHPDqXJpZSB4IHNlcXVlbmNpYWwgZGUgMiBhIDE4LiBFc3RhYmVsZWNlbW9zIHVtIGludGVydmFsbyBwYXJhICQ1IFxsZSB4IFxsdCAxMCQgZSBvdXRybyBwYXJhICQxMCBcbGUgeCBcbHQgMTUkLiAgICANCg0KUG9ydGFudG8sIGEgZnVuw6fDo28gcmV0b3JuYXLDoSB1bWEgY2xhc3NlIDAgcGFyYSB4IDwgNSwgbyB2YWxvciAxIHBhcmEgZW50cmUgNSBlIDEwLCBhIGNsYXNzZSAyIHBhcmEgZW50cmUgMTAgZSAxNSwgZSBjbGFzc2UgMyBwYXJhIGFjaW1hIGRlIDE1LiBBdGVudGFyIHBhcmEgb3MgaW50ZXJ2YWxvcyBhYmVydG8gZSBmZWNoYWRvIFs1LDEwKSBlIFsxMCwxNSkuICANCg0KDQpgYGB7ciBleDF9DQp4IDwtIDI6MTgNCnYgPC0gYyg1LCAxMCwgMTUpICMgY3JlYXRlIHR3byBiaW5zIFs1LDEwKSBhbmQgWzEwLDE1KQ0KY2JpbmQoeCwgZmluZEludGVydmFsKHgsIHYpKQ0KYGBgDQoNCkFnb3JhIHZvdSBhZGljaW9uYXIgMSBwYXJhIHF1ZSBhcyBjbGFzc2VzIHNlamFtIG51bWVyYWRhcyBhIHBhcnRpciBkZSAxIGUgY2xhc3NlIGZhdG9yLg0KDQpgYGB7ciBleDJ9DQp4IDwtIDI6MTgNCnYgPC0gYyg1LCAxMCwgMTUpICMgY3JlYXRlIHR3byBiaW5zIFs1LDEwKSBhbmQgWzEwLDE1KQ0KZGFkb3M8LWNiaW5kKHgsIGNsYXNzZT1mYWN0b3IoMStmaW5kSW50ZXJ2YWwoeCwgdikpKQ0KZGFkb3MNCg0KYGBgDQoNCg0KDQojIFJlZmVyw6puY2lhcyB7I1JlZmVyw6puY2lhcyAudW5udW1iZXJlZH0NCg0KYGBge3IsaW5jbHVkZT1GQUxTRX0NCmtuaXRyOjp3cml0ZV9iaWIoYygucGFja2FnZXMoKSwgImJvb2tkb3duIiksICJwYWNrYWdlcy5iaWIiLCB3aWR0aCA9IDYwKQ0KYGBgDQo=