'Rcpp' Integration of Additional Probability Distributions

The 'Rcpp' package provides a C++ library to make it easier to use C++ with R. R and 'Rcpp' provide functions for a variety of statistical distributions. Several R packages make functions available to R for additional statistical distributions. However, to access these functions from C++ code, a costly call to the R functions must be made. 'RcppDist' provides a header-only C++ library with functions for additional statistical distributions that can be called from C++ when writing code using 'Rcpp' or 'RcppArmadillo'. Functions are available that return a 'NumericVector' as well as doubles, and for multivariate or matrix distributions, 'Armadillo' vectors and matrices. 'RcppDist' provides functions for the following distributions: the four parameter beta distribution; the location- scale t distribution; the truncated normal distribution; the truncated t distribution; a truncated location-scale t distribution; the triangle distribution; the multivariate normal distribution*; the multivariate t distribution*; the Wishart distribution*; and the inverse Wishart distribution*. Distributions marked with an asterisk rely on 'RcppArmadillo'.


Travis-CI Build Status AppVeyor Build Status Coverage Status License: GPL v2

The Rcpp package provides a C++ library to make it easier to use C++ with R. R and Rcpp provide functions for a variety of statistical distributions. Several R packages make functions available to R for additional statistical distributions. However, to access these functions from C++ code, a costly call to the R functions must be made.

RcppDist provides a C++ library with functions for additional statistical distributions that can be called from C++ when writing code using Rcpp or RcppArmadillo. Functions are available that return NumericVectors as well as doubles, and for multivariate or matrix distributions, Armadillo vectors and matrices.

RcppDist will provide functions for the following distributions:

  • The four parameter beta distribution
  • The location-scale t distribution
  • The truncated normal distribution
  • The truncated t distribution
  • A truncated location-scale t distribution
  • The triangular distribution
  • The multivariate normal distribution*
  • The multivariate t distribution*
  • The Wishart distribution*
  • The inverse Wishart distribution*

Distributions marked with an asterisk rely on RcppArmadillo; if a user would prefer to use Rcpp but not RcppArmadillo (i.e. include the Rcpp headers but not the RcppArmadillo headers), include the line

#define RCPPDIST_DONT_USE_ARMA

before including RcppDist.h, though this will make the asterisked distributions unavailable.

The distributions above were selected for inclusion because I already had occasion to generate C++ code for use with Rcpp (or RcppArmadillo) for these distributions, but I am open to requests to expand the package to include additional distributions -- just open an issue with the requested feature.

License

GPL (>= 2)

News

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.

install.packages("RcppDist")

0.1.1 by JB Duck-Mayr, 6 months ago


https://github.com/duckmayr/RcppDist


Report a bug at https://github.com/duckmayr/RcppDist/issues


Browse source code at https://github.com/cran/RcppDist


Authors: JB Duck-Mayr [aut, cre]


Documentation:   PDF Manual  


GPL (>= 2.0) license


Imports Rcpp

Suggests testthat, knitr, rmarkdown

Linking to Rcpp, RcppArmadillo


See at CRAN