rstan: RStan - the R interface to Stan

rstan-packageR Documentation

RStan — the R interface to Stan

Description

mc-stan.org Stan Development Team

RStan is the R interface to the Stan C++ package. The RStan interface (rstan R package) provides:

  • Full Bayesian inference using the No-U-Turn sampler (NUTS), a variant of Hamiltonian Monte Carlo (HMC)

  • Approximate Bayesian inference using automatic differentiation variational inference (ADVI)

  • Penalized maximum likelihood estimation using L-BFGS optimization

For documentation on Stan itself, including the manual and user guide for the modeling language, case studies and worked examples, and other tutorial information visit the Users section of the Stan website:

Other R packages from the Stan Development Team

Various related R packages are also available from the Stan Development Team including these and more:

Package Description Doc Website
bayesplot ggplot-based plotting of parameter estimates, diagnostics, and posterior predictive checks. bayesplot-package mc-stan.org/bayesplot
shinystan Interactive GUI for exploring MCMC output. shinystan-package mc-stan.org/shinystan
loo Out-of-sample predictive performance estimates and model comparison. loo-package mc-stan.org/loo
rstanarm R formula interface for applied regression modeling. rstanarm-package mc-stan.org/rstanarm
rstantools Tools for developers of R packages interfacing with Stan. rstantools-package mc-stan.org/rstantools

Author(s)

Jonah Gabry (author) <jonah.sol.gabry@columbia.edu>
Ben Goodrich (maintainer, author) <benjamin.goodrich@columbia.edu>
Jiqiang Guo (author) <guojq28@gmail.com>

There are also many other important contributors to RStan (github.com/rstan). Please use 'Stan Development Team' whenever citing the R interface to Stan. A BibTex entry is available from https://mc-stan.org/rstan/authors or citation("rstan").

See Also

Examples

## Not run: 

stanmodelcode <- "
data {
  int<lower=0> N;
  array[N] real y;
}

parameters {
  real mu;
}

model {
  target += normal_lpdf(mu | 0, 10);
  target += normal_lpdf(y  | mu, 1);
}
"

y <- rnorm(20)
dat <- list(N = 20, y = y);
fit <- stan(model_code = stanmodelcode, model_name = "example",
            data = dat, iter = 2012, chains = 3, verbose = TRUE,
            sample_file = file.path(tempdir(), 'norm.csv'))
print(fit)

# extract samples
e <- extract(fit, permuted = FALSE) # return a list of arrays
str(e)

arr <- as.array(fit) # return an array
str(arr)

mat <- as.matrix(fit) # return a matrix
str(mat)

## End(Not run)

rstan documentation built on Oct. 15, 2023, 9:06 a.m.