https://github.com/slowikj/whyr-rcpp-workshop
Rcpp workshop (WhyR? 2020 Conference)
https://github.com/slowikj/whyr-rcpp-workshop
r rcpp rcppparallel workshop
Last synced: 8 days ago
JSON representation
Rcpp workshop (WhyR? 2020 Conference)
- Host: GitHub
- URL: https://github.com/slowikj/whyr-rcpp-workshop
- Owner: slowikj
- Created: 2020-09-25T05:12:10.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2022-10-09T18:28:23.000Z (over 2 years ago)
- Last Synced: 2025-04-03T08:03:13.869Z (about 2 months ago)
- Topics: r, rcpp, rcppparallel, workshop
- Language: C++
- Homepage:
- Size: 21.5 KB
- Stars: 6
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# How to make your code fast - R and C++ integration using Rcpp
## Authors
Jadwiga Słowik, Dominik Rafacz, Laura Bąkała
## Description
Rcpp is an R package that facilitates performing more efficient computations by using C++ and provides wrappers for R internals such as vectors and lists. Due to the seamless C++ and R API integration, Rcpp gives the opportunity to export C++ code to R conveniently and, thus, to take advantage of the C++ high performance and idiomatic high-level R interface.
During the workshop, a participant will gain knowledge of C++ basics that is necessary for Rcpp, become familiar with the usage of Rcpp wrappers (for example IntegerVector, StringVector, NumericVector, List) and learn how to create Rcpp functions in order to invoke them from an R code. Finally, a few extensions are going to be showcased, such as RcppArmadillo, RcppParallel, RcppModules, which can make code even more efficient.
A participant of the workshop is required to have basic R programming skills such as: vectors manipulation, functions implementation, packages installation and familiarity with the RStudio environment. Some knowledge of C++ help, however, is not essential.
RequirementsAdditionally, a working RStudio environment should be prepared before the workshop. In particular, the following packages will be needed: Rcpp, RcppArmadillo, RcppParallel.