Skip to content
Prev 5423 / 5632 Next

[R-meta] remove intercept from an intercept-only model

Dear community,

I am curious about whether there is a way to fit a meta-analysis model like:
M0 <- rma(yi ~ 0, vi, data=dat)

I tried it, but rma does not allow to do so with the warning message: Cannot fit model with an empty model matrix. Coerced intercept into the model.

My motivation to do so is to get BIC and thus approximate the Bayes factor using the formula: BF_{10} = e^{(BIC_0 - BIC_1)/2, where BIC_0 is the BIC of model object M0, and BIC_1 is the BIC of model object M1 <- rma(yi ~ 1, vi, data=dat). The formula comes from the following reference:

Wagenmakers, E. J. (2007). A practical solution to the pervasive problems of p values. Psychonomic bulletin & review, 14(5), 779-804.

Both lm() and lme4() allow fitting such an intercept-removed intercept-only model. I am not sure whether the meta-analytic model is possible. Alternatively, any formula or code can get BIC directly from data rather than fitting such a 'weird' model.

Best,
Yefeng