uisd: Unit information standard deviation

Description Usage Arguments Details Value Author(s) References See Also Examples

View source: R/bayesmeta.R

Description

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

Usage

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

Arguments

n

vector of sample sizes or an escalc object.

sigma

vector of standard errors associated with n.

sigma2

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

labels

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

individual

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

...

other uisd arguments.

Details

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

sqrt(1/sum(sigma^(-2))).

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).

Value

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

Author(s)

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

References

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. arXiv preprint 2007.08352 (submitted for publication), 2020.

See Also

escalc.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
# load data set:
data("CrinsEtAl2014")

# 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:
uisd(CrinsAR)

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

bayesmeta documentation built on Dec. 15, 2020, 5:15 p.m.