md.vcov: Computing Variance-Covariance Matrices for Mean Differences

Description Usage Arguments Value Author(s) References Examples

View source: R/md.vcov.R

Description

The function md.vcov computes effect sizes and variance-covariance matrix for multivariate meta-analysis when the effect sizes of interest are all measured by mean difference. See mix.vcov for effect sizes of the same or different types.

Usage

1
md.vcov(r, nt, nc, n_rt = NA, n_rc = NA, sdt, sdc)

Arguments

r

A N-dimensional list of p x p correlation matrices for the p outcomes from the N studies. r[[k]][i,j] is the correlation coefficient between outcome i and outcome j from study k.

nt

A N x p matrix storing sample sizes in the treatment group reporting the p outcomes. nt[i,j] is the sample size from study i reporting outcome j.

nc

A matrix defined in a similar way as nt for the control group.

n_rt

A N-dimensional list of p x p matrices storing sample sizes in the treatment group reporting pairwise outcomes in the off-diagonal elements. n_rt[[k]][i,j] is the sample size reporting both outcome i and outcome j from study k. Diagonal elements of these matrices are discarded. The default value is NA, which means that the smaller sample size reporting the corresponding two outcomes is imputed: i.e. n_rt[[k]][i,j]=min(nt[k,i],nt[k,j]).

n_rc

A list defined in a similar way as n_rt for the control group.

sdt

A N x p matrix storing sample standard deviations for each outcome from treatment group. sdt[i,j] is the sample standard deviation from study i for outcome j. If outcome j is not continuous such as MD or SMD, NA has to be imputed in the jth column.

sdc

A matrix defined in a similar way as sdt for the control group.

Value

list.vcov

A N-dimensional list of p(p+1)/2 x p(p+1)/2 matrices of computed variance-covariance matrices.

matrix.vcov

A N x p(p+1)/2 matrix whose rows are computed variance-covariance vectors.

Author(s)

Min Lu

References

Ahn, S., Lu, M., Lefevor, G.T., Fedewa, A. & Celimli, S. (2016). Application of meta-analysis in sport and exercise science. In N. Ntoumanis, & N. Myers (Eds.), An Introduction to Intermediate and Advanced Statistical Analyses for Sport and Exercise Scientists (pp.233-253). Hoboken, NJ: John Wiley and Sons, Ltd.

Wei, Y., & Higgins, J. (2013). Estimating within study covariances in multivariate meta-analysis with multiple outcomes. Statistics in Medicine, 32(7), 119-1205.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
######################################################
# Example: Geeganage2010 data
# Preparing covariances for multivariate meta-analysis
######################################################
## set the correlation coefficients list r
r12 <- 0.71
r.Gee <- lapply(1:nrow(Geeganage2010), function(i){matrix(c(1, r12, r12, 1), 2, 2)})

computvcov <- md.vcov(nt = subset(Geeganage2010, select = c(nt_SBP, nt_DBP)),
                    nc = subset(Geeganage2010, select = c(nc_SBP, nc_DBP)),
                    sdt = subset(Geeganage2010, select=c(sdt_SBP, sdt_DBP)),
                    sdc = subset(Geeganage2010, select=c(sdc_SBP, sdc_DBP)),
                    r = r.Gee)
# name variance-covariance matrix as S
S <- computvcov$matrix.vcov
## fixed-effect model
y <- as.data.frame(subset(Geeganage2010, select = c(MD_SBP, MD_DBP)))
MMA_FE <- summary(metafixed(y = y, Slist = computvcov$list.vcov))
MMA_FE
#######################################################################
# Running random-effects model using package "mvmeta" or "metaSEM"
#######################################################################
# Restricted maximum likelihood (REML) estimator from the mvmeta package
#library(mvmeta)
#mvmeta_RE <- summary(mvmeta(cbind(MD_SBP, MD_DBP), S = S,
#                         data = subset(Geeganage2010, select = c(MD_SBP, MD_DBP)),
#                         method = "reml"))
#mvmeta_RE

# maximum likelihood estimators from the metaSEM package
# library(metaSEM)
# metaSEM_RE <- summary(meta(y = y, v = S))
# metaSEM_RE
##############################################################
# Plotting the result:
##############################################################
# obj <- MMA_FE
# obj <- mvmeta_RE
# obj <- metaSEM_RE

# plotCI(y = y, v = computvcov$list.vcov,
#         name.y = c("MD_SBP", "MD_DBP"), name.study = Geeganage2010$studyID,
#         y.all = obj$coefficients[,1],
#         y.all.se = obj$coefficients[,2])

metavcov documentation built on Oct. 25, 2021, 9:08 a.m.