Smoothes functional data using tf::tf_smooth()
.
This preprocessing operator is similar to PipeOpFDAInterpol
, however it does not interpolate to unobserved
x-values, but rather smooths the observed values.
Parameters
The parameters are the parameters inherited from PipeOpTaskPreprocSimple
,
as well as the following parameters:
method
::character(1)
One of:"lowess"
: locally weighted scatterplot smoothing (default)"rollmean"
: rolling mean"rollmedian"
: rolling meadian"savgol"
: Savitzky-Golay filtering
All methods but "lowess" ignore non-equidistant arg values.
args
:: namedlist()
List of named arguments that is passed totf_smooth()
. See the help page oftf_smooth()
for default values.verbose
::logical(1)
Whether to print messages during the transformation. Is initialized toFALSE
.
Super classes
mlr3pipelines::PipeOp
-> mlr3pipelines::PipeOpTaskPreproc
-> mlr3pipelines::PipeOpTaskPreprocSimple
-> PipeOpFDASmooth
Methods
Method new()
Initializes a new instance of this Class.
Usage
PipeOpFDASmooth$new(id = "fda.smooth", param_vals = list())
Arguments
id
(
character(1)
)
Identifier of resulting object, default"fda.smooth"
.param_vals
(named
list
)
List of hyperparameter settings, overwriting the hyperparameter settings that would otherwise be set during construction. Defaultlist()
.
Examples
task = tsk("fuel")
po_smooth = po("fda.smooth", method = "rollmean", args = list(k = 5))
task_smooth = po_smooth$train(list(task))[[1L]]
task_smooth
#> <TaskRegr:fuel> (129 x 4): Spectral Data of Fossil Fuels
#> * Target: heatan
#> * Properties: -
#> * Features (3):
#> - tfr (2): NIR, UVVIS
#> - dbl (1): h20
task_smooth$data(cols = c("NIR", "UVVIS"))
#> NIR
#> <tfd_reg>
#> 1: [1]: (1, 0.3);(2, 0.3);(3, 0.3); ...
#> 2: [2]: (1, 0.3);(2, 0.3);(3, 0.3); ...
#> 3: [3]: (1,-0.01);(2,-0.01);(3,-0.01); ...
#> 4: [4]: (1,-0.03);(2,-0.03);(3,-0.03); ...
#> 5: [5]: (1, -0.1);(2, -0.1);(3, -0.1); ...
#> ---
#> 125: [6]: (1,-0.04);(2,-0.04);(3,-0.04); ...
#> 126: [7]: (1, -0.6);(2, -0.6);(3, -0.6); ...
#> 127: [8]: (1, -0.8);(2, -0.8);(3, -0.8); ...
#> 128: [9]: (1,-0.05);(2,-0.05);(3,-0.05); ...
#> 129: [10]: (1, 0.1);(2, 0.1);(3, 0.1); ...
#> UVVIS
#> <tfd_reg>
#> 1: [1]: (1, 0.7);(2, 0.7);(3, 0.7); ...
#> 2: [2]: (1,-0.9);(2,-0.9);(3,-0.9); ...
#> 3: [3]: (1,-0.2);(2,-0.2);(3,-0.2); ...
#> 4: [4]: (1,-0.5);(2,-0.5);(3,-0.5); ...
#> 5: [5]: (1,-0.8);(2,-0.8);(3,-0.8); ...
#> ---
#> 125: [6]: (1,-0.6);(2,-0.6);(3,-0.6); ...
#> 126: [7]: (1,-0.9);(2,-0.9);(3,-0.9); ...
#> 127: [8]: (1,-0.8);(2,-0.8);(3,-0.8); ...
#> 128: [9]: (1, 0.6);(2, 0.6);(3, 0.6); ...
#> 129: [10]: (1,-0.8);(2,-0.8);(3,-0.8); ...