compare_BIC | R Documentation |
This function is used to compare the BIC of several outputs obtained with the same data but with different set of parameters.
Each object must have associated logLik()
method with df and nobs attributes.
BIC for object x will be calculated as 2*factor.value*sum(logLik(x))+sum(attributes(logLik(x))$df)*log(attributes(logLik(x))$nobs))
.
When several data (i..n) are included, the global BIC is calculated as:
2*factor.value*sum(logLik(x)) for i..n+sum(attributes(logLik(x))$df) for i..n*log(attributes(logLik(x))$nobs for i..n))
compare_BIC(
...,
factor.value = -1,
silent = FALSE,
FUN = function(x) specify_decimal(x, decimals = 2)
)
... |
Successive results to be compared as lists. |
factor.value |
The $value of the list object is multiplied by factor.value to calculate BIC. |
silent |
If TRUE, nothing is displayed. |
FUN |
Function used to show values |
compare_BIC compares the BIC of several outputs obtained with the same data.
A list with DeltaBIC and Akaike weight for the models.
Marc Girondot marc.girondot@gmail.com
Other AIC:
ExtractAIC.glm()
,
FormatCompareAIC()
,
compare_AIC()
,
compare_AICc()
## Not run:
library("HelpersMG")
# Here two different models are fitted
x <- 1:30
y <- rnorm(30, 10, 2)+log(x)
plot(x, y)
d <- data.frame(x=x, y=y)
m1 <- lm(y ~ x, data=d)
m2 <- lm(y ~ log(x), data=d)
compare_BIC(linear=m1, log=m2, factor.value=-1)
# Here test if two datasets can be modeled with a single model
x2 <- 1:30
y2 <- rnorm(30, 15, 2)+log(x2)
plot(x, y, ylim=c(5, 25))
plot_add(x2, y2, col="red")
d2 <- data.frame(x=x2, y=y2)
m1_2 <- lm(y ~ x, data=d2)
x_grouped <- c(x, x2)
y_grouped <- c(y, y2)
d_grouped <- data.frame(x=x_grouped, y=y_grouped)
m1_grouped <- lm(y ~ x, data=d_grouped)
compare_BIC(separate=list(m1, m1_2), grouped=m1_grouped, factor.value=-1)
## End(Not run)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.