Calculates numerical filter values for features. For a list of features, use listFilterMethods.

generateFilterValuesData(
  task,
  method = "randomForestSRC_importance",
  nselect = getTaskNFeats(task),
  ...,
  more.args = list()
)

Arguments

task

(Task)
The task.

method

(character | list)
Filter method(s). In case of ensemble filters the list notation needs to be used. See the examples for more information. Default is “randomForestSRC_importance”.

nselect

(integer(1))
Number of scores to request. Scores are getting calculated for all features per default.

...

(any)
Passed down to selected method. Can only be use if method contains one element.

more.args

(named list)
Extra args passed down to filter methods. List elements are named with the filter method name the args should be passed down to. A more general and flexible option than .... Default is empty list.

Value

(FilterValues). A list containing:

task.desc

[TaskDesc)
Task description.

data

(data.frame) with columns:

  • name(character)
    Name of feature.

  • type(character)
    Feature column type.

  • method(numeric)
    One column for each method with the feature importance values.

Simple and ensemble filters

Besides passing (multiple) simple filter methods you can also pass an ensemble filter method (in a list). The ensemble method will use the simple methods to calculate its ranking. See listFilterEnsembleMethods() for available ensemble methods.

See also

Examples

# two simple filter methods fval = generateFilterValuesData(iris.task, method = c("FSelectorRcpp_gain.ratio", "FSelectorRcpp_information.gain")) # using ensemble method "E-mean" fval = generateFilterValuesData(iris.task, method = list("E-mean", c("FSelectorRcpp_gain.ratio", "FSelectorRcpp_information.gain")))