Base class for filters. Predefined filters are stored in the dictionary mlr_filters. A Filter calculates a score for each feature of a task. Important features get a large value and unimportant features get a small value. Note that filter scores may also be negative.

## Details

Some features support partial scoring of the feature set: If nfeat is not NULL, only the best nfeat features are guaranteed to get a score. Additional features may be ignored for computational reasons, and then get a score value of NA.

Other Filter: mlr_filters_anova, mlr_filters_auc, mlr_filters_carscore, 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_jmim, mlr_filters_jmi, 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_variance, mlr_filters

## Public fields

id

(character(1))
Identifier of the object. Used in tables, plot and text output.

label

(character(1))
Label for this object. Can be used in tables, plot and text output instead of the ID.

task_type

(character(1))
Task type, e.g. "classif" or "regr". Can be set to NA to allow all task types.

For a complete list of possible task types (depending on the loaded packages), see mlr_reflections$task_types$type.

task_properties

(character())

param_set

Set of hyperparameters.

feature_types

(character())
Feature types of the filter.

packages

(character())
Packages which this filter is relying on.

man

(character(1))
String in the format [pkg]::[topic] pointing to a manual page for this object. Defaults to NA, but can be set by child classes.

scores

Stores the calculated filter score values as named numeric vector. The vector is sorted in decreasing order with possible NA values last. The more important the feature, the higher the score. Tied values (this includes NA values) appear in a random, non-deterministic order.

## Methods

### Method new()

Create a Filter object.

Filter$new( id, task_type, task_properties = character(), param_set = ps(), feature_types = character(), packages = character(), label = NA_character_, man = NA_character_ ) #### Arguments id (character(1)) Identifier for the filter. task_type (character()) Types of the task the filter can operator on. E.g., "classif" or "regr". Can be set to NA to allow all task types. task_properties (character()) Required task properties, see mlr3::Task. Must be a subset of mlr_reflections$task_properties.

param_set

Set of hyperparameters.

feature_types

(character())
Feature types the filter operates on. Must be a subset of mlr_reflections$task_feature_types. packages (character()) Set of required packages. Note that these packages will be loaded via requireNamespace(), and are not attached. label (character(1)) Label for the new instance. man (character(1)) String in the format [pkg]::[topic] pointing to a manual page for this object. The referenced help package can be opened via method $help().

### Method format()

Format helper for Filter class

### Method calculate()

#### Arguments

task

mlr3::Task to calculate the filter scores for.

nfeat

(integer())
The minimum number of features to calculate filter scores for.

### Method clone()

The objects of this class are cloneable with this method.

#### Usage

Filter\$clone(deep = FALSE)

#### Arguments

deep

Whether to make a deep clone.