The mr_egger
function implements the MR-Egger method introduced by Bowden et al (2015).
This method provides: 1) a test of the for directional pleiotropy (the MR-Egger intercept test), 2) a test for a causal effect, and 3) an estimate of the causal effect. If the intercept term differs from zero, then the genetic variants are not all valid instrumental variables and the standard (inverse-variance weighted) estimate is biased. If the InSIDE (Instrument Strength Independent of Direct Effect) assumption holds, then the MR-Egger slope parameter provides a test for a causal effect, and a consistent estimate of the causal effect even if the intercept differs from zero.
Usage
mr_egger(
object,
robust = FALSE,
penalized = FALSE,
correl = FALSE,
distribution = "normal",
alpha = 0.05,
...
)
# S4 method for MRInput
mr_egger(
object,
robust = FALSE,
penalized = FALSE,
correl = FALSE,
distribution = "normal",
alpha = 0.05,
...
)
Arguments
- object
An
MRInput
object.- robust
Indicates whether robust regression using the
lmrob()
function from the packagerobustbase
should be used in the method.- penalized
Indicates whether a penalty should be applied to the weights to downweight the contribution of genetic variants with outlying ratio estimates to the analysis.
- correl
If the genetic variants are correlated, then this correlation can be accounted for. The matrix of correlations between must be provided: the elements of this matrix are the correlations between the individual variants (diagonal elements are 1). If a correlation is specified, then the values of
"robust"
and"penalized"
are taken asFALSE
.- distribution
The type of distribution used to calculate the confidence intervals, can be
"normal"
(the default option) or"t-dist"
. If the distribution is"t-dist"
, then a t-distribution is used in case of over-dispersion. In case of under-dispersion, the confidence interval is the wider of that using the estimated residual standard error and a t-distribution, or that using a residual standard error of 1 and a normal distribution. This ensures that under-dispersion is not "doubly penalized" by setting the residual standard error to 1 and using a t-distribution, and also that the random-effects analysis is no more precise than a fixed-effect analysis would be.- alpha
The significance level used to calculate the confidence interval. The default value is 0.05.
- ...
Additional arguments to be passed to the regression method.
Value
The output of the function is an Egger
object containing:
- Model
A character string giving the type of model used (
"random"
).- Exposure
A character string giving the name given to the exposure.
- Outcome
A character string giving the name given to the outcome.
- Correlation
The matrix of genetic correlations.
- Robust
TRUE
if robust estimate has been calculated,FALSE
otherwise.- Penalized
TRUE
if weights have been penalized,FALSE
otherwise.- Estimate
The value of the causal estimate (slope coefficient).
- StdError.Est
Standard error of the causal estimate.
- Pvalue.Est
The p-value associated with the estimate (calculated as Estimate/StdError as per Wald test) using a normal or t-distribution (as specified in
distribution
).- CILower.Est
The lower bound of the causal estimate based on the estimated standard error and the significance level provided.
- CIUpper.Est
The upper bound of the causal estimate based on the estimated standard error and the significance level provided.
- Intercept
The value of the intercept estimate.
- StdError.Int
Standard error of the intercept estimate.
- Pvalue.Int
The p-value associated with the intercept.
- CILower.Int
The lower bound of the intercept based on the estimated standard error and the significance level provided.
- CIUpper.Int
The upper bound of the intercept based on the estimated standard error and the significance level provided.
- Alpha
The significance level used when calculating the confidence intervals (same as
alpha
above).- SNPs
The number of genetic variants (SNPs) included in the analysis.
- Causal.pval
The p-value for the MR-Egger causal estimate.
- Pleio.pval
The p-value for the MR-Egger intercept test (a low p-value suggests either directional pleiotropy or failure of the InSIDE assumption, and indicates that the IVW estimate is biased).
- RSE
The estimated residual standard error from the regression model.
- Heter.Stat
Heterogeneity statistic (Cochran's Q statistic) and associated p-value: the null hypothesis is that the regression model (including an intercept) fits the regression model with no additional variability. Rejection of the null hypothesis is expected if genetic variants are pleiotropic, and doesn't mean that the MR-Egger analysis or the InSIDE assumption is invalid.
- I.sq
A measure of heterogeneity between the genetic associations with the exposure (see Bowden IJE 2016). Low values of
I.sq
relate both to large differences in precision between MR-Egger and IVW estimates, and to more weak instrument bias (in a two-sample setting, this is attenuation of MR-Egger estimate towards the null).
Details
The causal estimate is obtained by regression of the associations with the outcome on the associations with the risk factor, with weights being the inverse-variances of the associations with the outcome. The intercept is estimated (in contrast with the inverse-variance weighted method, where the intercept is set to zero).
As part of the analysis, the genetic variants are orientated so that all of the associations with the risk factor are positive (and signs of associations with the outcome are changed to keep the orientation consistent if required). Re-orientation of the genetic variants is performed automatically as part of the function.
The MR-Egger model uses a random-effects model ("random"
); a fixed-effect model does not make sense as pleiotropy leads to heterogeneity between the causal estimates targeted by the genetic variants. The (multiplicative) random-effects model allows over-dispersion in the regression model. Under-dispersion is not permitted (in case of under-dispersion, the residual standard error is set to 1).
References
Jack Bowden, George Davey Smith, Stephen Burgess. Mendelian randomization with invalid instruments: effect estimation and bias detection through Egger regression. International Journal of Epidemiology 2015; 44:512--525. doi: 10.1093/ije/dyv080.
Confidence intervals, and robust and penalized weights: Stephen Burgess, Jack Bowden, Frank Dudbridge, Simon G Thompson. Robust instrumental variable methods using multiple candidate instruments with application to Mendelian randomization. arXiv 2016; 1606.03729.
I-squared statistic: Jack Bowden and others. Assessing the suitability of summary data for Mendelian randomization analyses using MR-Egger regression: The role of the I2 statistic. Int J Epidemiol 2016 (to appear).
Examples
mr_egger(mr_input(bx = ldlc, bxse = ldlcse, by = chdlodds, byse = chdloddsse))
#>
#> MR-Egger method
#> (variants uncorrelated, random-effect model)
#>
#> Number of Variants = 28
#>
#> ------------------------------------------------------------------
#> Method Estimate Std Error 95% CI p-value
#> MR-Egger 3.253 0.770 1.743, 4.762 0.000
#> (intercept) -0.011 0.015 -0.041, 0.018 0.451
#> ------------------------------------------------------------------
#> Residual Standard Error : 1.935
#> Heterogeneity test statistic = 97.3975 on 26 degrees of freedom, (p-value = 0.0000)
#> I^2_GX statistic: 91.9%
mr_egger(mr_input(bx = ldlc, bxse = ldlcse, by = chdlodds, byse = chdloddsse),
robust = TRUE)
#>
#> MR-Egger method
#> (variants uncorrelated, random-effect model)
#>
#> Number of Variants = 28
#> Robust regression used.
#> ------------------------------------------------------------------
#> Method Estimate Std Error 95% CI p-value
#> MR-Egger 3.256 0.624 2.033, 4.479 0.000
#> (intercept) -0.015 0.021 -0.055, 0.026 0.474
#> ------------------------------------------------------------------
#> Residual Standard Error : 1.498
#> Heterogeneity test statistic = 97.7380 on 26 degrees of freedom, (p-value = 0.0000)
#> I^2_GX statistic: 91.9%
mr_egger(mr_input(bx = ldlc, bxse = ldlcse, by = chdlodds, byse = chdloddsse),
penalized = TRUE)
#>
#> MR-Egger method
#> (variants uncorrelated, random-effect model)
#>
#> Number of Variants = 28
#> Weights of genetic variants with heterogeneous causal estimates have been penalized.
#> ------------------------------------------------------------------
#> Method Estimate Std Error 95% CI p-value
#> MR-Egger 3.421 0.531 2.380, 4.461 0.000
#> (intercept) -0.022 0.011 -0.043, 0.000 0.051
#> ------------------------------------------------------------------
#> Residual Standard Error : 1.266
#> Heterogeneity not calculated when weights are penalized.
#> I^2_GX statistic: 91.9%
mr_egger(mr_input(calcium, calciumse, fastgluc, fastglucse, corr=calc.rho))
#>
#> MR-Egger method
#> (variants correlated, random-effect model)
#>
#> Number of Variants = 6
#>
#> ------------------------------------------------------------------
#> Method Estimate Std Error 95% CI p-value
#> MR-Egger 1.302 1.518 -1.672, 4.276 0.391
#> (intercept) 0.009 0.013 -0.017, 0.035 0.493
#> ------------------------------------------------------------------
#> Residual Standard Error : 0.629
#> Residual standard error is set to 1 in calculation of confidence interval when its estimate is less than 1.
#> Heterogeneity test statistic = 1.5825 on 4 degrees of freedom, (p-value = 0.8119)
## correlated variants