This repository contains a set of R scripts designed to build, evaluate, visualize, and perform sensitivity analysis on Bayesian models. These scripts use a mixture of rstan
, rstanarm
, and other Bayesian analysis libraries to facilitate the modeling process.
- Purpose: Loads the necessary libraries for the entire modeling workflow.
- Libraries Used:
rstanarm
bayesplot
ggplot2
cowplot
purrr
rstan
loo
- Purpose: Defines various prior distributions.
- Functions:
student_t_prior
normal_prior
cauchy_prior
uniform_prior
beta_prior
gamma_prior
binomial_prior
poisson_prior
lognormal_prior
bernoulli_prior
- Purpose: Provides utility functions to manage distributions.
- Functions:
add_distribution
: Add a new distribution to the working list.reset_distributions
: Resets custom distributions to their original forms.get_prior_distribution
: Retrieve a prior distribution based on type.
- Purpose: Generate empirical Bayesian priors from data.
- Functions:
empirical_bayes_priors
: Computes priors based on data and given formula.
- Purpose: Checks the convergence of a given model.
- Functions:
check_convergence
: Assesses if a model has converged.
- Purpose: Fits a Bayesian model using given priors and data.
- Functions:
fit_model_with_prior
: Fits a Bayesian model usingstan_glm
.
- Purpose: Visualizes model fit and posterior distributions.
- Functions:
generate_plot
: Generates trace or histogram plots.plot_posterior_distributions
: Plots 95% intervals for posterior distributions.
- Purpose: Performs sensitivity analysis for various prior configurations.
- Functions:
define_prior
: Defines priors for the sensitivity analysis.sensitivity_analysis
: Conducts sensitivity analysis using different prior combinations.
- Purpose: Evaluates the performance of a model on test data.
- Functions:
evaluate_model_performance
: Computes RMSE for regression or accuracy for classification.