mlr3filters (version 0.8.0)

mlr_filters_carscore: Correlation-Adjusted Marignal Correlation Score Filter

Description

Calculates the Correlation-Adjusted (marginal) coRrelation scores (short CAR scores) implemented in care::carscore() in package care. The CAR scores for a set of features are defined as the correlations between the target and the decorrelated features. The filter returns the absolute value of the calculated scores.

Argument verbose defaults to FALSE.

Arguments

Super class

mlr3filters::Filter -> FilterCarScore

Methods

Inherited methods


Method new()

Create a FilterCarScore object.

Usage

FilterCarScore$new()


Method clone()

The objects of this class are cloneable with this method.

Usage

FilterCarScore$clone(deep = FALSE)

Arguments

deep

Whether to make a deep clone.

See Also

  • PipeOpFilter for filter-based feature selection.

  • Dictionary of Filters: mlr_filters

Other Filter: Filter, mlr_filters, mlr_filters_anova, mlr_filters_auc, mlr_filters_boruta, mlr_filters_carsurvscore, mlr_filters_cmim, mlr_filters_correlation, mlr_filters_disr, mlr_filters_find_correlation, mlr_filters_importance, mlr_filters_information_gain, mlr_filters_jmi, mlr_filters_jmim, mlr_filters_kruskal_test, mlr_filters_mim, mlr_filters_mrmr, mlr_filters_njmim, mlr_filters_performance, mlr_filters_permutation, mlr_filters_relief, mlr_filters_selected_features, mlr_filters_univariate_cox, mlr_filters_variance

Examples

Run this code
if (requireNamespace("care")) {
  task = mlr3::tsk("mtcars")
  filter = flt("carscore")
  filter$calculate(task)
  head(as.data.table(filter), 3)

  ## changing the filter settings
  filter = flt("carscore")
  filter$param_set$values = list("diagonal" = TRUE)
  filter$calculate(task)
  head(as.data.table(filter), 3)
}

if (mlr3misc::require_namespaces(c("mlr3pipelines", "care", "rpart"), quietly = TRUE)) {
  library("mlr3pipelines")
  task = mlr3::tsk("mtcars")

  # Note: `filter.frac` is selected randomly and should be tuned.

  graph = po("filter", filter = flt("carscore"), filter.frac = 0.5) %>>%
    po("learner", mlr3::lrn("regr.rpart"))

  graph$train(task)
}

Run the code above in your browser using DataLab