Description Usage Arguments Details Value Author(s) References Examples
mbmdr
implements the Model Based Multifactor Dimensionality Reduction (MB-MDR) method
proposed by Calle et al.(2008) as a dimension reduction method for
exploring gene-gene interactions.
1 2 3 4 |
y |
Vector containing the dependent variable. |
data |
A data.frame (or object coercible by as.data.frame to a data frame)
containing the SNP information with values 0,1,2. |
order |
Single integer that specifies the order of interactions to be analyzed. |
covar |
(Optional) A data.frame or object coercible by as.data.frame to a
data frame containing the covariates for adjusting regression models. |
exclude |
(Optional) Value/s of missing data. If missings in data are coded differently
than |
risk.threshold |
Threshold used at the first MB-MDR stage for defining the risk category of a multilocus
genotype. It should be a conservative value.
The default value is |
output |
(Optional) Output file name for storing |
adjust |
Type of regressions adjustment. Options are |
first.model |
(Optional) Numerical vector of length equal to |
list.models |
(Optional) Exhaustive list of models to be analyzed. Only models in list will be analyzed.
It can be: a vector of lenght |
use.logistf |
Boolean value indicating whether or not to use the |
printStep1 |
Boolean value. If true, the details of |
... |
For regression arguments: arguments to be passed to |
MB-MDR is a method for identifying multi-locus genotypes that are associated with
a phenotype of interest, and allows to adjust for marginal and confounding effects.
The exploration of interacions is performed in three steps:
Step1
Each genotype is tested for association with the response and is classified as high risk, low risk
or not significant, and all genotypes of the same class are merged. The threshold for considering
significant evidence is the value specified in risk.threshold
(by default risk.threshold=0.1
).
If printStep1=TRUE
, the MBMDR function prints this classification.
Step2
For each risk categories, high and low, a new association test is performed. The result
provides a Wald statistic for the high and for the low categories.
Step3
The significance is explored through a permutation test on the maximum Wald statistics.
mbmdr
returns an object of class mbmdr
with the following attributes:
call |
The matched call. | |||||||||||||||||||||||||||||||
y |
The outcome used. | |||||||||||||||||||||||||||||||
data |
The SNPs data used. | |||||||||||||||||||||||||||||||
covar |
The covariate data used. | |||||||||||||||||||||||||||||||
result |
Dataframe with those interactions that have at least a significant genotype.
For each interaction (rows), the following information is returned:
|
If printStep1
argument is set to TRUE
, the result of the first step in
mbmdr
is printed for each genotype with the following information:
... | Genotype. | |
cases | (only for case/control outcome) Number of cases with the specific genotype. | |
controls | (only for case/control outcome) Number of controls with the specific genotype. | |
beta | Regression coefficient for this genotype. | |
p.value | Wald test p-value for this genotype. | |
category | Predicted risk category for this genotype. | |
Victor Urrea, Malu Calle, Kristel Van Steen, Nuria Malats
Calle M.L., Urrea V., Vellalta G., Malats N., Steen K.V. (2008) Improving strategies for detecting genetic patterns of disease susceptibility in association studies. Statistics in Medicine 27, 6532-6546.
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 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 | #--- Dicotomous outcome -------------
# load example data
data(simSNP)
# MB-MDR analysis of all possible 2nd order interactions (it may take some time)
# The order of the interactions to be explored is specified by order=2
# fit <- mbmdr(y=simSNP$Y,data=simSNP[,3:12],order=2,family=binomial(link=logit))
# print(fit)
# MB-MDR analysis of the epistatic effect of SNP1 and SNP2 (Model 2 1)
# The specific model to be analyzed is specified by list.models=c(2,1)
fit <- mbmdr(y=simSNP$Y,data=simSNP[,3:12],order=2,list.models=c(2,1),
family=binomial(link=logit),printStep1=TRUE)
print(fit)
# MB-MDR analysis of the epistatic effect of SNP1 and SNP2, adjusted for variable X
# The specific model to be analyzed is specified by list.models=c(2,1)
# The adjustment statement is specified by adjust="covariates"
fit <- mbmdr(y=simSNP$Y,data=simSNP[,3:12],order=2,list.models=c(2,1),
covar=simSNP$X,adjust="covariates",family=binomial(link=logit))
print(fit)
# MB-MDR analysis of all 2nd order interactions restricted to a subset of snps
# (all possible 2nd order interactions among SNP1, SNP2 and SNP3 are explored,
# it may take some time)
# SNP1, SNP2 and SNP3 are placed in columns 3 to 5 of simSNP. This is specified
# by data=simSNP[,3:5]
# fit <- mbmdr(y=simSNP$Y,data=simSNP[,3:5],order=2,family=binomial(link=logit),
# printStep1=TRUE)
# print(fit)
# MB-MDR analysis of all possible 3rd order interactions (it may take some time)
# The order of the interactions to be explored is specified by order=3
# fit <- mbmdr(y=simSNP$Y,data=simSNP[,3:12],order=3,family=binomial(link=logit))
# print(fit)
# MB-MDR analysis of the 3rd order epistatic effect of SNP1, SNP2 and SNP3
# The specific model to be analyzed is specified by list.models=c(3,2,1)
# fit <- mbmdr(y=simSNP$Y,data=simSNP[,3:12],order=3,list.models=c(3,2,1),
# family=binomial(link=logit),printStep1=TRUE)
# print(fit)
#--- Continuous outcome --------------
# load example data
data(simSNPcont)
# MB-MDR analysis of all possible 2nd order interactions (it may take some time)
# The order of the interactions to be explored is specified by order=2
# fit <- mbmdr(y=simSNPcont$Y,data=simSNPcont[,2:11],order=2)
# print(fit)
# MB-MDR analysis of the epistatic effect of SNP1 and SNP2 (Model 2 1)
# The specific model to be analyzed is specified by list.models=c(2,1)
fit <- mbmdr(y=simSNPcont$Y,data=simSNPcont[,2:11],order=2,
list.models=c(2,1),printStep1=TRUE)
print(fit)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.