[R-meta] egger's test for funnel plot symmetry of a `robu()` model
James Pustejovsky
jepu@to @end|ng |rom gm@||@com
Mon Nov 18 20:43:58 CET 2019
Reza,
The basic syntax that you've sent looks fine to me, but I do have three
suggestions:
1. In the robu() calls, I would recommend turning on the small-sample
correction to the variance-covariance matrix using the option small = TRUE
(which is also the default, so you could just omit the argument).
Generally, the small-sample corrections should be used unless you're quite
sure that you've got a large enough sample to trust the asymptotic
approximations involved in robust variance estimation. But the quickest way
to gauge that is to turn on the small-sample corrections and see if it
makes a difference....so might as well use them in the first place.
2. If these effect size estimates are standardized mean differences, then
the usual Egger regression test should not be used because d is naturally
correlated with SE_d even if there are no small-study effects. We've
suggested a fix for this issue, which involves using a slightly different
predictor variable in place of the SD in Egger's regression. Details here:
https://www.jepusto.com/publication/testing-for-funnel-plot-asymmetry-of-smds/
3. Based on a funnel plot of your data, it looks like you have some really
large outliers with ES > 3, which are probably driving all of your
estimates. It might be worth looking into those effects more closely to
figure out what's going on.
James
On Mon, Nov 18, 2019 at 10:03 AM Reza Norouzian <rnorouzian using gmail.com>
wrote:
> Dear All,
>
> I was wondering if my solution below correctly performs egger's test for a
> `robu()` model from `robumeta` package in R? Specifically, Is my *p.value*
> credible?
>
> The idea is that after fitting a meta-analytic model (`*m1` below*), we
> regress some measure of precision (e.g., SE of effect sizes; `*SD` below*),
> on effect sizes (`*y` below*) themselves. If the slope for the regression
> line is significant then that could suggest publication bias.
>
> Thanks, Reza
>
> d <- read.csv("https://raw.githubusercontent.com/izeh/m/master/e.csv", h = T) # DATA
>
> m1 <- robu(y~1, data = d, study = id, var = SD^2, small = FALSE)
>
> X <- cbind(1, d$SD) ## SE as the predictor
> ## egger test:
> egger <- robu(y ~ X - 1, data = d, var = SD^2, study = id, small = FALSE)
> # p-value of X2 which suggests publication bias if significant:
> egger$reg_table$prob[2]# > [1] 0.636
>
> --
> *Reza Norouzian*
> Postdoctoral Research Associate | Lecturer
> Second Language Acquisition & Research Methods, Ph.D.
> College of Education & Human Development
> Dep. of Teaching, Learning & Culture | Texas A&M University
> College Station, TX 77843
> Webpage: *https://directory.education.tamu.edu/view.epl?nid=rnorouzian
> <https://directory.education.tamu.edu/view.epl?nid=rnorouzian>*
> Email: rnorouzian using tamu.edu
> Phone: (979)-422-7052
> *Future L2 researchers will be challenged not only on the basis of their
> substantive questions, but also on how they manage to answer those
> questions in a methodical manner.*
>
[[alternative HTML version deleted]]
More information about the R-sig-meta-analysis
mailing list