Create Stan Code for Model
Source:R/generics.R
, R/make_model_string_model.R
make_model_string_model.Rd
Create Stan Code for Model
Usage
make_model_string_model(borrowing, outcome, analysis_obj)
# S4 method for class 'ANY,ANY,Analysis'
make_model_string_model(borrowing, outcome, analysis_obj)
# S4 method for class 'BorrowingFull,ANY,Analysis'
make_model_string_model(borrowing, outcome, analysis_obj)
# S4 method for class 'BorrowingNone,ANY,Analysis'
make_model_string_model(borrowing, outcome, analysis_obj)
# S4 method for class 'BorrowingHierarchicalCommensurate,ANY,Analysis'
make_model_string_model(borrowing, outcome, analysis_obj)
Examples
anls_obj <- create_analysis_obj(
data_matrix = example_matrix,
outcome = outcome_surv_exponential(
"time",
"cnsr",
baseline_prior = prior_normal(0, 1000)
),
borrowing = borrowing_hierarchical_commensurate(
"ext",
prior_exponential(.001)
),
treatment = treatment_details(
"trt",
prior_normal(0, 1000)
),
covariates = add_covariates(
covariates = c("cov1", "cov2"),
priors = prior_normal(0, 1000)
)
)
#> Inputs look good.
#> Stan program compiled successfully!
#> Ready to go! Now call `mcmc_sample()`.
make_model_string_model(anls_obj@borrowing, anls_obj@outcome, anls_obj)
#> model {
#> vector[N] lp;
#> vector[N] elp;
#> beta_trt ~ normal(0, 1000);
#> lp = X * beta + Z * alpha + trt * beta_trt;
#> elp = exp(lp) ;
#>
#> beta[1] ~ normal(0, 1000) ;
#> beta[2] ~ normal(0, 1000) ;
#> tau ~ exponential(0.001) ;
#> real sigma;
#> sigma = 1 / tau;
#> alpha[2] ~ normal(0, 1000) ;
#> alpha[1] ~ normal(alpha[2], sqrt(sigma)) ;
#> for (i in 1:N) {
#> if (cens[i] == 1) {
#> target += exponential_lccdf(time[i] | elp[i] );
#> } else {
#> target += exponential_lpdf(time[i] | elp[i] );
#> }
#> }
#> }