R/imputation.R

Defines functions imputation

Documented in imputation

#'  imputate data
#'
#'
#' @param data  A data frame
#' @param var_begin A x-axis variable,character type
#' @param method imputation method, currently the default is KNN.
#' @param minmum  minmum value when data have zero value
#'
#'
#' @name imputation
#' @rdname imputation
#' @export
#'

imputation <- function(data,
                      var_begin=1,
                      var_end = dim(data)[2],
                      method = "KNN",
                      minmum = 0.01
)
{
    for (i in var_begin:var_end){
        data[, i]<-as.numeric(as.character(data[, i]));
    }
    if(method=='KNN')
    {
        data[, var_begin:var_end]<-DMwR::knnImputation(data[, var_begin:var_end]);
    }
    #Min of SA is 0; so need to change it to a very small number
    #sapply(data[, var_begin:length(names(data))], function(y) sum(length(which(y==0))));
    data[, var_begin:var_end][ data[, var_begin:var_end]==0]<-minmum;
    #sapply(data[, var_begin:length(names(data))], function(y) round(min(y, na.rm=T), 2));
    return(data)
}
ShouyeLiu/metaboliteUtility documentation built on May 6, 2019, 9:07 a.m.