Description Usage Arguments Details Value Author(s) References Examples
This function allows imputing data sets with a multiple imputation strategy. For details, see Giai Gianetto Q. et al. (2020) (doi: doi: 10.1101/2020.05.29.122770).
1 2 3 4 5 6 7 8 | mi.mix(tab, tab.imp, prob.MCAR, conditions, repbio=NULL, reptech=NULL, nb.iter=3, nknn=15,
weight=1, selec="all", siz=500, ind.comp=1, methodMCAR="mle", q=0.95,
progress.bar=TRUE, details=FALSE, ncp.max=5, maxiter = 10, ntree = 100,
variablewise = FALSE, decreasing = FALSE, verbose = FALSE, mtry = floor(sqrt(ncol(tab))),
replace = TRUE,classwt = NULL, cutoff = NULL, strata = NULL, sampsize = NULL,
nodesize = NULL, maxnodes = NULL,xtrue = NA, parallelize = c('no', 'variables',
'forests'), methodMNAR="igcda",q.min = 0.025, q.norm = 3, eps = 0, distribution = "unif",
param1 = 3, param2 = 1, R.q.min=1)
|
tab |
A data matrix containing numeric and missing values. Each column of this matrix is assumed to correspond to an experimental sample, and each row to an identified peptide. |
tab.imp |
A matrix where the missing values of |
prob.MCAR |
A matrix of probabilities that each missing value is MCAR. For instance such a matrix can be obtained from the function |
conditions |
A vector of factors indicating the biological condition to which each column (experimental sample) belongs. |
repbio |
A vector of factors indicating the biological replicate to which each column belongs. Default is NULL (no experimental design is considered). |
reptech |
A vector of factors indicating the technical replicate to which each column belongs. Default is NULL (no experimental design is considered). |
nb.iter |
The number of iterations used for the multiple imputation method. |
nknn |
The number of nearest neighbours used in the SLSA algorithm (see |
selec |
A parameter to select a part of the dataset to find nearest neighbours between rows. This can be useful for big data sets (see |
siz |
A parameter to select a part of the dataset to perform imputations with a MCAR-devoted algorithm. This can be useful for big data sets. Note that |
weight |
The way of weighting in the algorithm (see |
ind.comp |
If |
methodMCAR |
The method used for imputing MCAR data. If |
methodMNAR |
The method used for imputing MNAR data. If |
q |
A quantile value (see |
progress.bar |
If |
details |
If |
ncp.max |
parameter of the |
maxiter |
parameter of the |
ntree |
parameter of the |
variablewise |
parameter of the |
decreasing |
parameter of the |
verbose |
parameter of the |
mtry |
parameter of the |
replace |
parameter of the |
classwt |
parameter of the |
cutoff |
parameter of the |
strata |
parameter of the |
sampsize |
parameter of the |
nodesize |
parameter of the |
maxnodes |
parameter of the |
xtrue |
parameter of the |
parallelize |
parameter of the |
q.min |
parameter of the |
q.norm |
parameter of the |
eps |
parameter of the |
distribution |
parameter of the |
param1 |
parameter of the |
param2 |
parameter of the |
R.q.min |
parameter of the |
At each iteration, a matrix indicating the MCAR values is generated by Bernouilli distributions having parameters given by the matrix prob.MCAR
. The generated MCAR values are next imputed thanks to the matrix tab.imp
. For each row containing MNAR values, the other rows are imputed thanks to the function impute.igcda
and, next, the considered row is imputed thanks to one of the MCAR-devoted imputation methods (impute.mle
, impute.RF
, impute.PCA
or impute.slsa
). So, the function impute.igcda
allows to deform the correlation structure of the dataset in view to be closer to that of the true values, while the MCAR-devoted imputation method will impute by taking into account this modified correlation structure.
The input matrix tab
with average imputed values instead of missing values if details=FALSE
(default). If details=TRUE
, a list of three values: imputed.matrix
a matrix with the average of imputed values for each missing value, sd.imputed.matrix
a matrix with the standard deviations of imputed values for each missing value, all.imputed.matrices
an array with all the nb.iter
matrices of imputed values that have been generated.
Quentin Giai Gianetto <quentin2g@yahoo.fr>
Giai Gianetto, Q., Wieczorek S., Couté Y., Burger, T. (2020). A peptide-level multiple imputation strategy accounting for the different natures of missing values in proteomics data. bioRxiv 2020.05.29.122770; doi: doi: 10.1101/2020.05.29.122770
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | #Simulating data
res.sim=sim.data(nb.pept=5000,nb.miss=1000);
#Fast imputation of missing values with the impute.rand algorithm
dat.rand=impute.rand(tab=res.sim$dat.obs,conditions=res.sim$condition);
#Estimation of the mixture model
res=estim.mix(tab=res.sim$dat.obs, tab.imp=dat.rand, conditions=res.sim$condition);
#Computing probabilities to be MCAR
born=estim.bound(tab=res.sim$dat.obs,conditions=res.sim$condition);
proba=prob.mcar.tab(tab.u=born$tab.upper,res=res);
#Multiple imputation strategy with 3 iterations (can be time consuming in function of the data set!)
data.mi=mi.mix(tab=res.sim$dat.obs, tab.imp=dat.rand, prob.MCAR=proba, conditions=
res.sim$conditions, repbio=res.sim$repbio, nb.iter=3);
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.