lgRR.vcov {metavcov} | R Documentation |
Computing Variance-Covariance Matrices for Log Risk Ratios
Description
The function lgOR.vcov
computes effect sizes and variance-covariance matrix for multivariate meta-analysis when the effect sizes of interest are all measured by log risk ratio (or log relative risk). See mix.vcov
for effect sizes of the same or different types.
Usage
lgRR.vcov(r, nt, nc, st, sc, n_rt = NA, n_rc = NA)
Arguments
r |
A |
nt |
A |
nc |
A matrix defined in a similar way as |
st |
A |
sc |
Defined in a similar way as |
n_rt |
A |
n_rc |
A list defined in a similar way as |
Value
ef |
A |
list.vcov |
A |
matrix.vcov |
A |
Author(s)
Min Lu
References
Lu, M. (2023). Computing within-study covariances, data visualization, and missing data solutions for multivariate meta-analysis with metavcov. Frontiers in Psychology, 14:1185012.
Examples
##########################################################################
# Example: Geeganage2010 data
# Preparing log risk ratios and covariances for multivariate meta-analysis
##########################################################################
data(Geeganage2010)
## 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 <- lgRR.vcov(nt = subset(Geeganage2010, select = c(nt_DD, nt_D)),
nc = subset(Geeganage2010, select = c(nc_DD, nc_D)),
st = subset(Geeganage2010, select=c(st_DD, st_D)),
sc = subset(Geeganage2010, select=c(sc_DD, sc_D)),
r = r.Gee)
# name computed log risk ratio as y
y <- computvcov$ef
colnames(y) = c("lgRR.DD", "lgRR.D")
# name variance-covariance matrix of trnasformed z scores as covars
S <- computvcov$matrix.vcov
## fixed-effect model
MMA_FE <- summary(metafixed(y = y, Slist = computvcov$list.vcov))
MMA_FE
#######################################################################
# Running random-effects model using package "mixmeta" or "metaSEM"
#######################################################################
#library(mixmeta)
#mvmeta_RE = summary(mixmeta(cbind(lgRR.DD, lgRR.D)~1,
# S = S, data = as.data.frame(y),
# 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
# pdf("CI.pdf", width = 4, height = 7)
plotCI(y = computvcov$ef, v = computvcov$list.vcov,
name.y = c("lgRR.DD", "lgRR.D"),
name.study = Geeganage2010$studyID,
y.all = obj$coefficients[,1],
y.all.se = obj$coefficients[,2],
hline = 1)
# dev.off()