Weights {MuMIn} | R Documentation |
Akaike weights
Description
Calculate, extract or set normalized model likelihoods (‘Akaike weights’).
Usage
Weights(x)
Weights(x) <- value
Arguments
x |
a numeric vector of any information criterion (such as
AIC, AIC |
value |
numeric, the new weights for the |
Details
‘Akaike weights’, \omega_{i}
, of a model i can be
interpreted as the probability that the model is the best (approximating) model
given the data and the set of all models considered. The weights are calculated as:
\omega_i = \frac{\exp(\Delta_i/2)}{\sum_{r=1}^{R}\exp(\Delta_r/2)}
where \Delta_{i}
is the IC difference of the i-th model relative to the
smallest IC value in the set of R models.
The replacement version of Weights
can assign new weights to an
"averaging"
object, affecting coefficient values and the order of
component models. Upon assignment, the weights are normalised to sum to one.
Value
For the extractor, a numeric vector of normalized likelihoods.
Note
Assigning new weights changes the model order accordingly, so reassigning
weights to the same object must take this new order into account, otherwise
the averaged coefficients will be calculated incorrectly. To avoid this, either
re-set the model weights by assigning NULL
, or sort the new weights
using the (decreasing) order of the previously assigned weights.
Author(s)
Kamil BartoĊ
See Also
armWeights
,
bootWeights
, BGWeights
, cos2Weights
,
jackknifeWeights
and stackingWeights
can be used to
produce various kinds of model weights.
Not to be confused with weights
, which extracts fitting weights
from model objects.
Examples
fm1 <- glm(Prop ~ dose, data = Beetle, family = binomial)
fm2 <- update(fm1, . ~ . + I(dose^2))
fm3 <- update(fm1, . ~ log(dose))
fm4 <- update(fm3, . ~ . + I(log(dose)^2))
round(Weights(AICc(fm1, fm2, fm3, fm4)), 3)
am <- model.avg(fm1, fm2, fm3, fm4, rank = AICc)
coef(am)
# Assign equal weights to all models:
Weights(am) <- rep(1, 4) # assigned weights are rescaled to sum to 1
Weights(am)
coef(am)
# Assign dummy weights:
wts <- c(2,1,4,3)
Weights(am) <- wts
coef(am)
# Component models are now sorted according to the new weights.
# The same weights assigned again produce incorrect results!
Weights(am) <- wts
coef(am) # wrong!
#
Weights(am) <- NULL # reset to original model weights
Weights(am) <- wts
coef(am) # correct