Kod R w plikach C++
Gdy kompilujesz plik C++ za pomocą sourceCpp() (lub przycisku „Source" w RStudio), Rcpp kompiluje kod i udostępnia wyeksportowane funkcje jako funkcje R.
sourceCpp() traktuje również komentarze umieszczone między /*** R a */ jako kod R, który zostanie wykonany po skompilowaniu pliku.
/*** R
# Run the exported R code here
*/
To bardzo przydatna funkcja podczas tworzenia kodu – pozwala błyskawicznie sprawdzić efekty wprowadzonych zmian.
Z tych specjalnych komentarzy będziesz korzystać przez całą resztę kursu.
To ćwiczenie jest częścią kursu
Optymalizacja kodu R za pomocą Rcpp
Instrukcje do ćwiczenia
- Otwórz blok komentarza R dla Rcpp, wpisując
/*** R. - Wywołaj funkcję
dist, aby obliczyć odległość od początku układu współrzędnych do punktu(3,4). - Zamknij blok komentarza R dla Rcpp, wpisując
*/.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
#include
using namespace Rcpp;
double square(double x) {
return x * x ;
}
// [[Rcpp::export]]
double dist(double x, double y) {
return sqrt(square(x) + square(y));
}
// Start the Rcpp R comment block
___
# Call dist() to the point (3, 4)
___
# Close the Rcpp R comment block
___