uisd {bayesmeta}R Documentation

Unit information standard deviation


This function estimates the unit information standard deviation (UISD) from a given set of standard errors and associated sample sizes.


  uisd(n, ...)
  ## Default S3 method:
uisd(n, sigma, sigma2=sigma^2, labels=NULL, individual=FALSE, ...)
  ## S3 method for class 'escalc'
uisd(n, ...)



vector of sample sizes or an escalc object.


vector of standard errors associated with n.


vector of squared standard errors (variances) associated with n.


(optional) a vector of labels corresponding to n and sigma.


a logical flag indicating whether individual (study-specific) UISDs are to be returned.


other uisd arguments.


The unit information standard deviation (UISD) reflects the “within-study” variability, which, depending on the effect measure considered, sometimes is a somewhat heuristic notion (Roever et al., 2020). For a single study, presuming that standard errors result as

sigma[i] = sigma[u] / sqrt(n[i]),

where sigma[u] is the within-study (population) standard deviation, the UISD simply results as

sigma[u] = sqrt(n[i] * sigma[i]^2).

This is often appropriate when assuming an (approximately) normal likelihood.

Assuming a constant sigma[u] value across studies, this figure then may be estimated by

s[u] = sqrt(mean(n) * hmean(sigma^2)) = sqrt(sum(n)/sum(sigma^-2)),

where mean(n) is the average (arithmetic mean) of the studies' sample sizes, and hmean(sigma^2) is the harmonic mean of the squared standard errors (variances).

The estimator s[u] is motivated via meta-analysis using the normal-normal hierarchical model (NNHM). In the special case of homogeneity (zero heterogeneity, tau=0), the overall mean estimate has standard error


Since this estimate corresponds to complete pooling, the standard error may also be expressed via the UISD as

sigma[u] / sqrt(sum(n)).

Equating both above standard error expressions yields s[u] as an estimator of the UISD sigma[u] (Roever et al, 2020).


Either a (single) estimate of the UISD, or, if individual was set to ‘TRUE’, a (potentially named) vector of UISDs for each individual study.


Christian Roever christian.roever@med.uni-goettingen.de


C. Roever, R. Bender, S. Dias, C.H. Schmid, H. Schmidli, S. Sturtz, S. Weber, T. Friede. On weakly informative prior distributions for the heterogeneity parameter in Bayesian random-effects meta-analysis. Research Synthesis Methods, 12(4):448-474, 2021. doi: 10.1002/jrsm.1475.

See Also



# load data set:

# compute logarithmic odds ratios (log-ORs):
CrinsAR  <- escalc(measure="OR",
                   ai=exp.AR.events,  n1i=exp.total,
                   ci=cont.AR.events, n2i=cont.total,
                   slab=publication, data=CrinsEtAl2014)

# estimate the UISD:
uisd(n     = CrinsAR$exp.total + CrinsAR$cont.total,
     sigma = sqrt(CrinsAR$vi),
     label = CrinsAR$publication)

# for an "escalc" object, one may also apply the function directly:

# compute study-specific UISDs:
uisd(CrinsAR, individual=TRUE)

[Package bayesmeta version 2.7 Index]