meta_stan: Fitting a meta-analysis model using Stan

View source: R/meta_stan.R

meta_stanR Documentation

Fitting a meta-analysis model using Stan

Description

'meta_stan' fits a meta-analysis model using Stan.

Usage

meta_stan(
  data = NULL,
  likelihood = NULL,
  mu_prior = c(0, 10),
  theta_prior = NULL,
  tau_prior = 0.5,
  tau_prior_dist = "half-normal",
  beta_prior = c(0, 100),
  delta = NULL,
  param = "Smith",
  re = TRUE,
  ncp = TRUE,
  interval.type = "shortest",
  mreg = FALSE,
  cov = NULL,
  chains = 4,
  iter = 2000,
  warmup = 1000,
  adapt_delta = 0.95,
  ...
)

Arguments

data

Data frame created by 'create_MetaStan_dat'

likelihood

A string specifying the likelihood function defining the statistical model. Options include 'normal', 'binomial', and 'Poisson'.

mu_prior

A numerical vector specifying the parameter of the normal prior density for baseline risks, first value is parameter for mean, second is for variance. Default is c(0, 10).

theta_prior

A numerical vector specifying the parameter of the normal prior density for treatment effect estimate, first value is parameter for mean, second is for variance. Default is NULL.

tau_prior

A numerical value specifying the standard dev. of the prior density for heterogeneity stdev. Default is 0.5.

tau_prior_dist

A string specifying the prior density for the heterogeneity standard deviation, option is 'half-normal' for half-normal prior, 'uniform' for uniform prior, 'half-cauchy' for half-cauchy prior.

beta_prior

A numerical vector specifying the parameter of the normal prior density for beta coefficients in a meta-regression model, first value is parameter for mean, second is for variance. Default is c(0, 100).

delta

A numerical value specifying the upper bound of the a priori interval for treatment effect on odds ratio scale (Guenhan et al (2020)). This is used to calculate a normal weakly informative prior. for theta. Thus when this argument is specified, 'theta' should be left empty. Default is NULL.

param

Paramteriztaion used. The default is the 'Smith' model suggested by Smith et al (1995). The alternative is 'Higgins' is the common meta-analysis model (Simmonds and Higgins, 2014).

re

A string specifying whether random-effects are included to the model. When 'FALSE', the model corresponds to a fixed-effects model. The default is 'TRUE'.

ncp

A string specifying whether to use a non-centered parametrization. The default is 'TRUE'.

interval.type

A string specifying the type of interval estimate. Options include shortest credible interval 'shortest' (default) and qui-tailed credible interval 'central'.

mreg

A string specifying whether to fit a meta-regression model. The default is 'FALSE'.

cov

A numeric vector or matrix specifying trial-level covariates (in each row). This is needed when 'mreg = TRUE'.

chains

A positive integer specifying the number of Markov chains. The default is 4.

iter

A positive integer specifying the number of iterations for each chain (including warmup). The default is 2000.

warmup

A positive integer specifying the number of warmup (aka burnin) iterations per chain. The default is 1000.

adapt_delta

A numerical value specifying the target average proposal acceptance probability for adaptation. See Stan manual for details. Default is 0.95. In general you should not need to change adapt_delta unless you see a warning message about divergent transitions, in which case you can increase adapt_delta from the default to a value closer to 1 (e.g. from 0.95 to 0.99, or from 0.99 to 0.999, etc).

...

Further arguments passed to or from other methods.

Value

an object of class 'MetaStan'.

References

Guenhan BK, Roever C, Friede T. MetaStan: An R package for meta-analysis and model-based meta-analysis using Stan. In preparation.

Guenhan BK, Roever C, Friede T. Random-effects meta-analysis of few studies involving rare events Resarch Synthesis Methods 2020; doi:10.1002/jrsm.1370.

Jackson D, Law M, Stijnen T, Viechtbauer W, White IR. A comparison of 7 random-effects models for meta-analyses that estimate the summary odds ratio. Stat Med 2018;37:1059–1085.

Kuss O. Statistical methods for meta-analyses including information from studies without any events-add nothing to nothing and succeed nevertheless, Stat Med, 2015; 4; 1097–1116, doi: 10.1002/sim.6383.

Examples

## Not run: 

## TB dataset
data('dat.Berkey1995', package = "MetaStan")
## Fitting a Binomial-Normal Hierarchical model using WIP priors
dat_MetaStan <- create_MetaStan_dat(dat = dat.Berkey1995,
                                    armVars = c(responders = "r", sampleSize = "n"))

 ma.stan  <- meta_stan(data = dat_MetaStan,
                           likelihood = "binomial",
                           mu_prior = c(0, 10),
                           theta_prior = c(0, 100),
                           tau_prior = 0.5,
                           tau_prior_dist = "half-normal")
print(ma.stan)
forest_plot(ma.stan)


meta.reg.stan  <- meta_stan(data = dat_MetaStan,
                           likelihood = "binomial",
                           mu_prior = c(0, 10),
                           theta_prior = c(0, 100),
                           tau_prior = 0.5,
                           tau_prior_dist = "half-normal",
                           mreg = TRUE,
                           cov = dat.Berkey1995$Latitude)

print(meta.reg.stan)

## End(Not run)


gunhanb/metastan documentation built on March 18, 2023, 12:09 a.m.