imputeSnpMatrix {GeneGeneInteR} | R Documentation |
imputeSnpMatrix
is a generic wrapper of
snp.imputation
and impute.snps
functions from snpStats
package. This function mimics a Leave-One-Out process where missing SNPs are
imputed for an individual based on a model trained on all other individuals.
imputeSnpMatrix(snpX, genes.info, on.rem = c("SNP", "ind", "none"), quiet = FALSE)
snpX |
|
genes.info |
A |
on.rem |
(optional) a character string matching one of the following items: SNP, ind, none. Describes the action taken in case of remaining missing values. See details |
quiet |
(optional) a boolean describing wether or not progress bar should be displayed. |
For the ith row in the snpX
argument (i.e. the ith individual in the dataset), the following steps are performed:
missing SNPs are detected for individual i
rules are imputed for every missing SNPs using the whole dataset where individual i is removed
SNPs are imputed for individual i
Although, such a process allows the imputation of a large number of missing SNPs, some missing values may remains. In that case, the user can specify the action to be done thanks to the om.rem
arguments:
om.rem="none"
: leave the dataset as it is,
om.rem="SNP"
: remove all SNPs with remaining missing values,
om.rem="ind"
: remove all individuals with remaining missing values.
Removing all SNPs is often more parsimonious than removing individuals and allows to get a dataset without any missing values with minimum information-loss.
a list object with two named elements:
|
a |
|
a data frame object corresponding to an updated
version of input |
A warning is printed when SNPs or individuals are removed.
## Not run: ped <- system.file("extdata/example.ped", package="GeneGeneInteR") info <- system.file("extdata/example.info", package="GeneGeneInteR") posi <- system.file("extdata/example.txt", package="GeneGeneInteR") data.imported <- importFile(file=ped, snps=info, pos=posi, pos.sep="\t") ## Example 1 without SNPs filtering ## In this example, 9 SNPs were removed due to remaining missing values. imputed.snps.1 <- imputeSnpMatrix(data.imported$snpX, genes.info = data.imported$genes.info) ## Example 2 with SNPs filtering priori to the imputation ## Filtering of the data: SNPs with MAF < 0.05 or p.value for HWE < 1e-3 or SNPs with ## call.rate < 0.9 are removed. data.scour <- snpMatrixScour(snpX=dta$snpX,genes.info=dta$genes.info,min.maf=0.05, min.eq=1e-3,call.rate=0) ## End(Not run) ## Equivalent loading of data for example 2 ## Imputation of the missing genotypes load(system.file("extdata/dataScour.Rdata", package="GeneGeneInteR")) data.imputed <- imputeSnpMatrix(data.scour$snpX, genes.info = data.scour$genes.info)