Rcpp - A interface entre R e C++

Como fazer seu código R ficar mais rápido com Rcpp

Jose Storopoli https://scholar.google.com/citations?user=xGU7H1QAAAAJ&hl=en (UNINOVE)https://www.uninove.br
February 2, 2021

CC BY-SA 4.0

Ok, você quer fazer o seu código R rodar mais rápido? Já pensou em colocar partes do seu código em C++?

R com C++ sem dúvida bate a marca dos 12 parsecs

Figure 1: R com C++ sem dúvida bate a marca dos 12 parsecs

Índice

  1. Por que C++? R não é suficiente?
  2. Como incorporar C++ no R – {Rcpp}
  3. Manipulação de Matrizes – {RcppEigen} e {RcppArmadillo}
  4. Paralelização – {RcppParallel}
  5. {cpp11} – Nova Interface do pessoal do RStudio
  6. Usando {Rcpp} na GPU com CUDA

Como Configurar um Ambiente para {Rcpp}

Claro, que primeiro você deve instalar o R pelo CRAN.

Pacotes do ecossistema R + C++

Total de Downloads do CRAN
Pacote Total de Downloads1 Links Reversos2,3

Rcpp

41,39M 2.318

BH

23,34M 259

RcppArmadillo

13,27M 851

RcppEigen

10,95M 287

cpp11

3,74M 9

RcppParallel

2,14M 81

1 Downloads entre 01/01/2016 e 31/12/2020.

2 Link reverso ocorre quando um pacote depende do código em C/C++ de outro.

3 Total em 11/01/2021.

Licença

Este obra está licenciado com uma Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional.

CC BY-SA 4.0

Corrections

If you see mistakes or want to suggest changes, please create an issue on the source repository.

Reuse

Text and figures are licensed under Creative Commons Attribution CC BY-SA 4.0. Source code is available at https://github.com/storopoli/Rcpp, unless otherwise noted. The figures that have been reused from other sources don't fall under this license and can be recognized by a note in their caption: "Figure from ...".

Citation

For attribution, please cite this work as

Storopoli (2021, Feb. 2). Rcpp - A interface entre R e C++. Retrieved from https://storopoli.github.io/Rcpp

BibTeX citation

@misc{storopoli2021rcpp,
  author = {Storopoli, Jose},
  title = {Rcpp - A interface entre R e C++},
  url = {https://storopoli.github.io/Rcpp},
  year = {2021}
}