[R-meta] selection models in metafor with step truncation

Viechtbauer, Wolfgang (NP) wo||g@ng@v|echtb@uer @end|ng |rom m@@@tr|chtun|ver@|ty@n|
Fri Aug 16 11:07:16 CEST 2024


Very interesting reads!

In the cases that I examined, the difference between these two versions was quite minor (and in fact, using something like step=.025 in the first place also has only a minor influence compared to not using a step threshold at all). But I should spell out more clearly which version in currently implemented and I will consider adding the other rescaling as well (to make it even more difficult for people to choose among the dozens of models available ...).

Best,
Wolfgang

> -----Original Message-----
> From: James Pustejovsky <jepusto using gmail.com>
> Sent: Friday, August 16, 2024 04:35
> To: Viechtbauer, Wolfgang (NP) <wolfgang.viechtbauer using maastrichtuniversity.nl>
> Cc: R Special Interest Group for Meta-Analysis <r-sig-meta-analysis using r-
> project.org>
> Subject: Re: [R-meta] selection models in metafor with step truncation
>
> Hi Wolfgang,
>
> Thanks for clarifying. I asked mainly because I'm (slowly) writing up notes on a
> bunch of selection models (links below) and wanted to make sure that I'm giving
> accurate descriptions of the metafor implementations. I don't have any solid
> intuition about which of the possibilities would be better--I would guess
> that any difference in fit might be pretty minor, but really not sure at all.
>
> James
>
> Notes on step function model: https://jepusto.com/posts/step-function-selection-
> models/
> Notes on Copas model: https://jepusto.com/posts/Copas-selection-models/
>
> On Tue, Aug 13, 2024 at 5:39 AM Viechtbauer, Wolfgang (NP)
> <mailto:wolfgang.viechtbauer using maastrichtuniversity.nl> wrote:
> Hi James,
>
> Catching up on posts here. See:
>
> https://github.com/wviechtb/metafor/blob/master/R/selmodel.rma.uni.r#L457
>
> Assuming preci=1 and using your notation, this is:
>
> ifelse(p_i < a, 1, w(p_i) / w(a))
>
> which I think (first day back in the office - brain is still in warm-up mode) is
> equivalent to min(1, w(p_i) / w(a)).
>
> I didn't consider the other possibility. Interesting idea -- I just tried this
> out and it does indeed give different results for some of the datasets that I
> used.
>
> Do you think one of these two options makes more sense?
>
> Happy to add this alternative version if you would like to see this in
> selmodel().
>
> Best,
> Wolfgang
>
> > -----Original Message-----
> > From: R-sig-meta-analysis <mailto:r-sig-meta-analysis-bounces using r-project.org>
> On Behalf
> > Of James Pustejovsky via R-sig-meta-analysis
> > Sent: Saturday, August 3, 2024 04:39
> > To: R meta <mailto:r-sig-meta-analysis using r-project.org>
> > Cc: James Pustejovsky <mailto:jepusto using gmail.com>
> > Subject: [R-meta] selection models in metafor with step truncation
> >
> > Hi Wolfgang,
> >
> > I see in the metafor documentation for selmodel (
> > https://wviechtb.github.io/metafor/reference/selmodel.html#half-normal-
> negative-
> > exponential-logistic-and-power-selection-models)
> > that the half-normal, negative exponential, logistic, and power curve
> > selection models can take a value for the step argument, as in the
> > following code:
> >
> > library(metafor)
> > dat <- dat.hahn2001
> > res <- rma(yi, vi, data=dat, method="REML")
> > selmodel(res, type="halfnorm", alternative="less")
> > selmodel(res, type="halfnorm", alternative="less", step = .025)
> >
> > From the description in the documentation, I wasn't sure how the step
> > truncation is implemented. Say that the step threshold is called a, the
> > p-value from study i is p_i, and the selection parameter is delta. Say that
> > the non-truncated weight function is w(p_i). For a > 0, is the weight
> > function
> > min(1, w(p_i) / w(a))
> > which you might call a "vertical" re-scaling? Or is it
> > ifelse(p_i < a, 1, w((p_i - a) / (1 - a)))
> > which you might call a "horizontal" re-scaling?
> >
> > I think for at least some of the selmodel types listed, the vertical and
> > horizontal rescalings give different shapes. Could you clarify?
> >
> > Best,
> > James


More information about the R-sig-meta-analysis mailing list