R: Extract features from functional data.

extractFDAFeatures {mlr} | R Documentation

## Extract features from functional data.

### Description

Extract non-functional features from functional features using various methods.

The function extractFDAFeatures performs the extraction for all functional features via the methods specified in `feat.methods` and transforms all mentioned functional (matrix) features into regular data.frame columns. Additionally, a “`extractFDAFeatDesc`” object which contains learned coefficients and other helpful data for re-extraction during the predict-phase is returned. This can be used with reextractFDAFeatures in order to extract features during the prediction phase.

### Usage

    extractFDAFeatures(obj, target = character(0L), feat.methods = list(), ...)

### Arguments

`obj` | (Task | data.frame) Task or data.frame to extract functional features from. Must contain functional features as matrix columns.
`target` | (`character(1)`) Task target column. Only neccessary for data.frames Default is `character(0)`.
`feat.methods` | (named list) List of functional features along with the desired methods for each functional feature. “all” applies the extractFDAFeatures method to each functional feature. Names of `feat.methods` must match column names of functional features. Available feature extraction methods are available under family `fda_featextractor`. Specifying a functional feature multiple times with different extraction methods allows for the extraction of different features from the same functional. Default is `list()` which does nothing.
`...` | (any) Further hyperparameters passed on to the `feat.methods` specified above.

### Details

The description object contains these slots:

- target `character`: See argument.

- coln `character`: Colum names of data.

- fd.cols `character`: Functional feature names.

- extractFDAFeat `list`: Contains `feature.methods` and relevant parameters for reextraction.

### Value

(list)

`data|task (data.frame | Task)` | Extracted features, same type as obj.
`desc (`extracFDAFeatDesc`)` | Description object. See description for details.

### See Also

Other fda: `makeExtractFDAFeatMethod()`, `makeExtractFDAFeatsWrapper()`

### Examples

    df = data.frame(x = matrix(rnorm(24), ncol = 8), y = factor(c("a", "a", "b")))
    fdf = makeFunctionalData(df, fd.features = list(x1 = 1:4, x2 = 5:8), exclude.cols = "y")
    task = makeClassifTask(data = fdf, target = "y")
    extracted = extractFDAFeatures(task,
      feat.methods = list("x1" = extractFDAFourier(), "x2" = extractFDAWavelets(filter = "haar")))
    print(extracted$task)
    reextractFDAFeatures(task, extracted$desc)

[Package mlr version 2.17.1 Index]