R/remove.constant.categorical.R

Defines functions remove.constant.categorical

Documented in remove.constant.categorical

#' Remove constant metrics and categorical metrics
#' 
#' @param dataset  a data frame for data
#' @param metrics  a characters or a vector of characters for independent variables
#' @keywords constant categorical
#' @examples
#' Data = loadDefectDataset('groovy-1_5_7','jira')
#' remove.constant.categorical(dataset = Data$data, metrics = Data$indep)
#' @export
remove.constant.categorical <-
  function(dataset,
           metrics) {
    # Check constant metrics
    constant <-
      apply(dataset[, metrics], 2, function(x)
        max(x) == min(x))
    constant <- names(constant[constant == TRUE])
    # Remove constant metrics
    if (length(constant) > 0) {
      metrics <- metrics[!metrics %in% constant]
    }
    
    # Check categorical metrics
    category <- sapply(dataset[, metrics], class)
    category <- names(category[category == "character"])
    # Remove categorical metrics from Spearman Analysis
    if (length(category) > 0) {
      metrics <- metrics[!metrics %in% category]
    }
    
    return(metrics)
  }
software-analytics/Rnalytica documentation built on Aug. 16, 2020, 9:38 p.m.