Skip to content
Prev 4528 / 5632 Next

[R-meta] Unrealistic confidence limits for heterogeneity?

Interesting point.

Just to note: Right now, a warning is already issued when tau2.min is set to a value lower than -min(vi) (as it then automatically sets tau2.min to -min(vi)). This is also documented (https://wviechtb.github.io/metafor/reference/rma.uni.html#note-1):

rma(yi, vi, data=dat, control=list(tau2.min=-1))
[...]
Warning message:
Value of 'tau2.min' constrained to -min(vi) = -0.1212.

Also, the function prevents shenanigans like trying to force tau^2 to be smaller than -min(vi):

rma(yi, vi, data=dat, tau2=-1)

Error in rma(yi, vi, data = dat, tau2 = -1) :
  Some marginal variances are negative.

But if the *estimate* is equal to tau2.min, then there is no further note about this (except that the user will see that in the output). In a way, this is no different than when tau^2 is estimated to be 0 (under the default tau2.min=0 setting).

Technically, it is not even possible to fit the model with tau2 = -min(vi) with ML/REML estimation, since this will lead to division by zero:

rma(yi, vi, data=dat, tau2=-min(vi))

Error in rma(yi, vi, data = dat, tau2 = -min(vi)) :
  Division by zero when computing the inverse variance weights.

The step halving algorithm that is used as part of ML/REML estimation in rma.uni() should essentially prevent that the estimate can actually hit -min(vi).

One can of course construct a dataset where the likelihood profile peaks essentially at -min(vi) (or rather, just a smidge above it), which might suggest that a value of tau^2 that is even smaller than -min(vi) could lead to an even larger likelihood, but then one would have to allow negative weights.

Best,
Wolfgang