[R-meta] Omnibus test of moderators in a model with an interaction term
Dear Gabriele I would not try to interpret anything about the main effects in the presence of an interaction. In effect the interaction is saying that the effect of one variable depends on the level of the other. I would not expect the effects of anything to be strictly additive unless they were orthogonal. I suspect that if in your main effects only model you look at the variance-covariance matrix of the coefficients (which you can get with vcov()) you will find a weak correlation between your two main effects (cov2cor() helps to convert to correlations). Michael
On 04/01/2018 16:46, Gabriele Midolo wrote:
I am using anova() to perform the ombibus test by setting the "btt" argument to estimate the amount of residual heterogeneity reduced for each moderator in an rma.mv model. For example, if I interpret this correctly, in a model with two moderators (and no interaction) I get the QM of the model with:
anova(res)
Test of Moderators (coefficient(s) 2:3): QM(df = 2) = 24.8445, p-val < .0001 Then I can estimate QM of moderator number 1 and 2 with:
anova(res,btt=2)
Test of Moderators (coefficient(s) 2): QM(df = 1) = 15.7282, p-val < .0001
anova(res,btt=3)
Test of Moderators (coefficient(s) 3): QM(df = 1) = 9.8144, p-val = 0.0017 The sum of the two QM values is 25.5, which somehow close to what obtained in the "anova(res)", so *is this the way to split the total QM and estimate the amount of residual heterogeneity for each moderator?* But what happens when I want to do the same in a model where there is an interaction? Suppose I have the following, where sNadd is a continuous variable and Fert is a categorical variable: topSR<-rma.mv(yi~sNadd*Fert, vi, data=Sr, random =~1|Experiment/ID)
topSR
Multivariate Meta-Analysis Model (k = 193; method: REML)
Variance Components:
estim sqrt nlvls fixed factor
sigma^2.1 0.0576 0.2400 83 no Experiment
sigma^2.2 0.0065 0.0809 193 no Experiment/ID
Test for Residual Heterogeneity:
QE(df = 189) = 1281.7188, p-val < .0001
Test of Moderators (coefficient(s) 2:4):
QM(df = 3) = 56.8972, p-val < .0001
Model Results:
estimate se zval pval ci.lb ci.ub
intrcpt -0.2368 0.0387 -6.1122 <.0001 -0.3127 -0.1608 ***
sNadd -0.1838 0.0272 -6.7686 <.0001 -0.2370 -0.1306 ***
FertbNH4 0.1567 0.0612 2.5603 0.0105 0.0367 0.2766 *
sNadd:FertbNH4 0.1308 0.0335 3.8996 <.0001 0.0651 0.1966 ***
---
Signif. codes: 0 ?***? 0.001 ?**? 0.01 ?*? 0.05 ?.? 0.1 ? ? 1
I want to calculate the contribution that sNadd and Fert have to
reduce residual heterogeneity individually to show this in a table of
a paper. I think I should estimate this with:
anova(topSR,btt=c(1,3))
Test of Moderators (coefficient(s) 1,3): QM(df = 2) = 40.2180, p-val < .0001
anova(topSR,btt=c(2,4))
Test of Moderators (coefficient(s) 2,4):
QM(df = 2) = 53.0494, p-val < .0001
so to split the intercept values and the slope values. Does this makes sense?
But the sum of the QM values you obtain is much higher than the test
of moderators found in the model output. I am no longer sure if it
makes sense to report QM for "Fert" and "sNadd" separately in a model
where these terms are part of an interaction. Also, the sum of the
individual factors and the interaction terms is much larger than the
total QM, indicating that the explained heterogeneity is given by the
full interactive term, and you cannot really split it between the
factor ("Fert") in isolation and the interaction between "sNadd" and
Fert.
*Is this really the case and, if yes, is there a way to do the same as
I did for the model without interaction?*
Hope I explained myself correctly.
Thank you so much and with my best,
Gabri
[[alternative HTML version deleted]]
_______________________________________________ R-sig-meta-analysis mailing list R-sig-meta-analysis at r-project.org https://stat.ethz.ch/mailman/listinfo/r-sig-meta-analysis