# bayesfactor_inclusion: Inclusion Bayes Factors for testing predictors across... In easystats/bayestestR: Understand and Describe Bayesian Models and Posterior Distributions

 bayesfactor_inclusion R Documentation

## Inclusion Bayes Factors for testing predictors across Bayesian models

### Description

The `⁠bf_*⁠` function is an alias of the main function.

### Usage

``````bayesfactor_inclusion(models, match_models = FALSE, prior_odds = NULL, ...)

bf_inclusion(models, match_models = FALSE, prior_odds = NULL, ...)
``````

### Arguments

 `models` An object of class `bayesfactor_models()` or `BFBayesFactor`. `match_models` See details. `prior_odds` Optional vector of prior odds for the models. See `⁠BayesFactor::priorOdds<-⁠`. `...` Arguments passed to or from other methods.

### Details

Inclusion Bayes factors answer the question: Are the observed data more probable under models with a particular effect, than they are under models without that particular effect? In other words, on average - are models with effect `X` more likely to have produced the observed data than models without effect `X`?

#### Match Models

If `match_models=FALSE` (default), Inclusion BFs are computed by comparing all models with a term against all models without that term. If `TRUE`, comparison is restricted to models that (1) do not include any interactions with the term of interest; (2) for interaction terms, averaging is done only across models that containe the main effect terms from which the interaction term is comprised.

### Value

a data frame containing the prior and posterior probabilities, and log(BF) for each effect (Use `as.numeric()` to extract the non-log Bayes factors; see examples).

### Interpreting Bayes Factors

A Bayes factor greater than 1 can be interpreted as evidence against the null, at which one convention is that a Bayes factor greater than 3 can be considered as "substantial" evidence against the null (and vice versa, a Bayes factor smaller than 1/3 indicates substantial evidence in favor of the null-model) (Wetzels et al. 2011).

### Note

Random effects in the `lmer` style are converted to interaction terms: i.e., `(X|G)` will become the terms `1:G` and `X:G`.

### Author(s)

Mattan S. Ben-Shachar

### References

• Hinne, M., Gronau, Q. F., van den Bergh, D., and Wagenmakers, E. (2019, March 25). A conceptual introduction to Bayesian Model Averaging. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.31234/osf.io/wgb64")}

• Clyde, M. A., Ghosh, J., & Littman, M. L. (2011). Bayesian adaptive sampling for variable selection and model averaging. Journal of Computational and Graphical Statistics, 20(1), 80-101.

• Mathot, S. (2017). Bayes like a Baws: Interpreting Bayesian Repeated Measures in JASP. Blog post.

`weighted_posteriors()` for Bayesian parameter averaging.

### Examples

``````
library(bayestestR)

# Using bayesfactor_models:
# ------------------------------
mo0 <- lm(Sepal.Length ~ 1, data = iris)
mo1 <- lm(Sepal.Length ~ Species, data = iris)
mo2 <- lm(Sepal.Length ~ Species + Petal.Length, data = iris)
mo3 <- lm(Sepal.Length ~ Species * Petal.Length, data = iris)

BFmodels <- bayesfactor_models(mo1, mo2, mo3, denominator = mo0)
(bf_inc <- bayesfactor_inclusion(BFmodels))

as.numeric(bf_inc)

# BayesFactor
# -------------------------------
BF <- BayesFactor::generalTestBF(len ~ supp * dose, ToothGrowth, progress = FALSE)
bayesfactor_inclusion(BF)

# compare only matched models:
bayesfactor_inclusion(BF, match_models = TRUE)

``````

easystats/bayestestR documentation built on July 13, 2024, 11:11 a.m.