# mlr_pipeops_imputeconstant

##### PipeOpImputeConstant

Impute features by a constant value.

##### Format

`R6Class`

object inheriting from `PipeOpImpute`

/`PipeOp`

.

##### Construction

PipeOpImputeConstant$new(id = "imputeconstant", param_vals = list())

`id`

::`character(1)`

Identifier of resulting object, default`"imputeconstant"`

.`param_vals`

:: named`list`

List of hyperparameter settings, overwriting the hyperparameter settings that would otherwise be set during construction. Default`list()`

.

##### Input and Output Channels

Input and output channels are inherited from `PipeOpImpute`

.

The output is the input `Task`

with all affected features missing values imputed by
the value of the `constant`

parameter.

##### State

The `$state`

is a named `list`

with the `$state`

elements inherited from `PipeOpImpute`

.

The `$state$model`

contains the value of the `constant`

parameter that is used for imputation.

##### Parameters

The parameters are the parameters inherited from `PipeOpImpute`

, as well as:

`constant`

::`atomic(1)`

The constant value that should be used for the imputation, atomic vector of length 1. The atomic mode must match the type of the features that will be selected by the`affect_columns`

parameter and this will be checked during imputation. Initialized to`".MISSING"`

.`check_levels`

::`logical(1)`

Should be checked whether the`constant`

value is a valid level of factorial features (i.e., it already is a level)? Raises an error if unsuccesful. This check is only performed for factorial features (i.e.,`factor`

,`ordered`

; skipped for`character`

). Initialized to`TRUE`

.

##### Internals

Adds an explicit new level to `factor`

and `ordered`

features, but not to `character`

features,
if `check_levels`

is `FALSE`

and the level is not already present.

##### Methods

Only methods inherited from `PipeOpImpute`

/`PipeOp`

.

##### See Also

Other PipeOps:
`PipeOpEnsemble`

,
`PipeOpImpute`

,
`PipeOpTargetTrafo`

,
`PipeOpTaskPreprocSimple`

,
`PipeOpTaskPreproc`

,
`PipeOp`

,
`mlr_pipeops_boxcox`

,
`mlr_pipeops_branch`

,
`mlr_pipeops_chunk`

,
`mlr_pipeops_classbalancing`

,
`mlr_pipeops_classifavg`

,
`mlr_pipeops_classweights`

,
`mlr_pipeops_colapply`

,
`mlr_pipeops_collapsefactors`

,
`mlr_pipeops_colroles`

,
`mlr_pipeops_copy`

,
`mlr_pipeops_datefeatures`

,
`mlr_pipeops_encodeimpact`

,
`mlr_pipeops_encodelmer`

,
`mlr_pipeops_encode`

,
`mlr_pipeops_featureunion`

,
`mlr_pipeops_filter`

,
`mlr_pipeops_fixfactors`

,
`mlr_pipeops_histbin`

,
`mlr_pipeops_ica`

,
`mlr_pipeops_imputehist`

,
`mlr_pipeops_imputelearner`

,
`mlr_pipeops_imputemean`

,
`mlr_pipeops_imputemedian`

,
`mlr_pipeops_imputemode`

,
`mlr_pipeops_imputeoor`

,
`mlr_pipeops_imputesample`

,
`mlr_pipeops_kernelpca`

,
`mlr_pipeops_learner`

,
`mlr_pipeops_missind`

,
`mlr_pipeops_modelmatrix`

,
`mlr_pipeops_multiplicityexply`

,
`mlr_pipeops_multiplicityimply`

,
`mlr_pipeops_mutate`

,
`mlr_pipeops_nmf`

,
`mlr_pipeops_nop`

,
`mlr_pipeops_ovrsplit`

,
`mlr_pipeops_ovrunite`

,
`mlr_pipeops_pca`

,
`mlr_pipeops_proxy`

,
`mlr_pipeops_quantilebin`

,
`mlr_pipeops_randomprojection`

,
`mlr_pipeops_randomresponse`

,
`mlr_pipeops_regravg`

,
`mlr_pipeops_removeconstants`

,
`mlr_pipeops_renamecolumns`

,
`mlr_pipeops_replicate`

,
`mlr_pipeops_scalemaxabs`

,
`mlr_pipeops_scalerange`

,
`mlr_pipeops_scale`

,
`mlr_pipeops_select`

,
`mlr_pipeops_smote`

,
`mlr_pipeops_spatialsign`

,
`mlr_pipeops_subsample`

,
`mlr_pipeops_targetinvert`

,
`mlr_pipeops_targetmutate`

,
`mlr_pipeops_targettrafoscalerange`

,
`mlr_pipeops_textvectorizer`

,
`mlr_pipeops_threshold`

,
`mlr_pipeops_tunethreshold`

,
`mlr_pipeops_unbranch`

,
`mlr_pipeops_updatetarget`

,
`mlr_pipeops_vtreat`

,
`mlr_pipeops_yeojohnson`

,
`mlr_pipeops`

Other Imputation PipeOps:
`PipeOpImpute`

,
`mlr_pipeops_imputehist`

,
`mlr_pipeops_imputelearner`

,
`mlr_pipeops_imputemean`

,
`mlr_pipeops_imputemedian`

,
`mlr_pipeops_imputemode`

,
`mlr_pipeops_imputeoor`

,
`mlr_pipeops_imputesample`

##### Examples

```
# NOT RUN {
library("mlr3")
task = tsk("pima")
task$missings()
# impute missing values of the numeric feature "glucose" by the constant value -999
po = po("imputeconstant", param_vals = list(
constant = -999, affect_columns = selector_name("glucose"))
)
new_task = po$train(list(task = task))[[1]]
new_task$missings()
new_task$data(cols = "glucose")[[1]]
# }
```

*Documentation reproduced from package mlr3pipelines, version 0.3.0, License: LGPL-3*