mixmeta.fixed {mixmeta} | R Documentation |
Fixed-Effects Estimator for mixmeta Models
Description
This function implements a generalized least square estimator for fixed-effects meta-analysis and meta-regression, including standard univariate models and non-standard multivariate extensions. It is meant to be used internally and not directly run by the users.
Usage
mixmeta.fixed(Xlist, ylist, Slist, nall, control, ...)
Arguments
Assuming a meta-analysis or meta-regression based on m
independent groups (usually studies) providing a single estimate (unit of analysis), k
outcomes and p
fixed-effects predictors:
Xlist |
a |
ylist |
a |
Slist |
a |
nall |
numeric scalar with the total number of observations (excluding missing). |
control |
list of parameters for controlling the fitting process, usually internally set to default values by |
... |
further arguments passed to or from other methods. Currently not used. |
Details
The estimation involves only the kp
fixed-effects coefficients. Note that, in this fixed-effects estimator, each unit is assumed independent from the others, and therefore the number of groups (the length of the lists) is identical to the number of units (m=n
). However, this is not important in fixed-effects models, where no random (and therefore grouping) structure is used.
The routine is based on a standard generalized least square (GLS) algorithm implemented in the internal function glsfit
. The between-study (co)variance matrix is set to zero, so the marginal (co)variance matrix, composed only by elements of the within-unit component, is assumed as completely known. Similarly to the likelihood-based estimators implemented in mixmeta.ml
and mixmeta.reml
, the computation involves Cholesky and and QR decompositions for computational stability and efficiency. The method is described in details in Gasparrini and collaborators (2012) (see references below).
Value
These functions return an intermediate list object, with some components then processed and some others added later within mixmeta.fit
and mixmeta
to finalize an object of class "mixmeta"
. See mixmetaObject
.
Note
As stated earlier, this function is called internally by mixmeta.fit
, and is not meant to be used directly. In particular, its code does not contain any check on the arguments provided, which are expected in specific formats. The function is however exported in the namespace and documented for completeness.
The arguments above are prepared by mixmeta.fit
from its arguments X
, y
and S
. The list structure, although requiring more elaborate coding, is computationally more efficient, as it avoids the specification of sparse block-diagonal matrices, especially for meta-analysis involving a large number of studies.
Some parameters of the fitting procedures are determined by the control
argument, with default set by mixmeta.control
. No missing values are accepted in the fitting functions. See details on missing values
.
Author(s)
Antonio Gasparrini <antonio.gasparrini@lshtm.ac.uk> and Francesco Sera <francesco.sera@lshtm.ac.uk>
References
Sera F, Armstrong B, Blangiardo M, Gasparrini A (2019). An extended mixed-effects framework for meta-analysis.Statistics in Medicine. 2019;38(29):5429-5444. [Freely available here].
Gasparrini A, Armstrong B, Kenward MG (2012). Multivariate meta-analysis for non-linear and other multi-parameter associations. Statistics in Medicine. 31(29):3821–3839. [Freely available here].
Berkey CS, Anderson JJ, Hoaglin DC (1996). Multiple-outcome meta-analysis of clinical trials. Statistics in Medicine. 15(5):537–547.
Berkey CS, et al. (1998). Meta-analysis of multiple outcomes by regression with random effects. Statistics in Medicine. 17(22):2537–2550.
See Also
See mixmeta
for the general usage of the functions. See mixmeta.control
to determine specific parameters of the fitting procedures. Use the triple colon operator (':::
') to access the code of the internal functions, such as glsfit
. See mixmeta-package
for an overview of the package and modelling framework.
Examples
# UNIVARIATE FIXED-EFFECTS MODEL
mod1 <- mixmeta(yC, S=SCC, data=smoking, method="fixed")
summary(mod1)
# MULTIVARIATE FIXED-EFFECTS MODEL
y <- as.matrix(smoking[11:13])
S <- as.matrix(smoking[14:19])
mod2 <- mixmeta(y, S, method="fixed")
summary(mod2)
# MULTIVARIATE FIXED-EFFECTS MODEL: REPLICATE THE RESULTS IN BERKEY ET AL. 1998
mod3 <- mixmeta(cbind(PD,AL) ~ I(pubyear-1983), S=berkey98[5:7], data=berkey98,
method="fixed")
summary(mod3)