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

library("mlr3") task = tsk("pima") task$missings()
#> diabetes age glucose insulin mass pedigree pregnant pressure #> 0 0 5 374 11 0 0 35 #> triceps #> 227
# 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()
#> diabetes age insulin mass pedigree pregnant pressure triceps #> 0 0 374 11 0 0 35 227 #> glucose #> 0
new_task$data(cols = "glucose")[[1]]
#> [1] 148 85 183 89 137 116 78 115 197 125 110 168 139 189 166 #> [16] 100 118 107 103 115 126 99 196 119 143 125 147 97 145 117 #> [31] 109 158 88 92 122 103 138 102 90 111 180 133 106 171 159 #> [46] 180 146 71 103 105 103 101 88 176 150 73 187 100 146 105 #> [61] 84 133 44 141 114 99 109 109 95 146 100 139 126 129 79 #> [76] -999 62 95 131 112 113 74 83 101 137 110 106 100 136 107 #> [91] 80 123 81 134 142 144 92 71 93 122 163 151 125 81 85 #> [106] 126 96 144 83 95 171 155 89 76 160 146 124 78 97 99 #> [121] 162 111 107 132 113 88 120 118 117 105 173 122 170 84 96 #> [136] 125 100 93 129 105 128 106 108 108 154 102 57 106 147 90 #> [151] 136 114 156 153 188 152 99 109 88 163 151 102 114 100 131 #> [166] 104 148 120 110 111 102 134 87 79 75 179 85 129 143 130 #> [181] 87 119 -999 73 141 194 181 128 109 139 111 123 159 135 85 #> [196] 158 105 107 109 148 113 138 108 99 103 111 196 162 96 184 #> [211] 81 147 179 140 112 151 109 125 85 112 177 158 119 142 100 #> [226] 87 101 162 197 117 142 134 79 122 74 171 181 179 164 104 #> [241] 91 91 139 119 146 184 122 165 124 111 106 129 90 86 92 #> [256] 113 111 114 193 155 191 141 95 142 123 96 138 128 102 146 #> [271] 101 108 122 71 106 100 106 104 114 108 146 129 133 161 108 #> [286] 136 155 119 96 108 78 107 128 128 161 151 146 126 100 112 #> [301] 167 144 77 115 150 120 161 137 128 124 80 106 155 113 109 #> [316] 112 99 182 115 194 129 112 124 152 112 157 122 179 102 105 #> [331] 118 87 180 106 95 165 117 115 152 178 130 95 -999 122 95 #> [346] 126 139 116 99 -999 92 137 61 90 90 165 125 129 88 196 #> [361] 189 158 103 146 147 99 124 101 81 133 173 118 84 105 122 #> [376] 140 98 87 156 93 107 105 109 90 125 119 116 105 144 100 #> [391] 100 166 131 116 158 127 96 131 82 193 95 137 136 72 168 #> [406] 123 115 101 197 172 102 112 143 143 138 173 97 144 83 129 #> [421] 119 94 102 115 151 184 94 181 135 95 99 89 80 139 90 #> [436] 141 140 147 97 107 189 83 117 108 117 180 100 95 104 120 #> [451] 82 134 91 119 100 175 135 86 148 134 120 71 74 88 115 #> [466] 124 74 97 120 154 144 137 119 136 114 137 105 114 126 132 #> [481] 158 123 85 84 145 135 139 173 99 194 83 89 99 125 80 #> [496] 166 110 81 195 154 117 84 -999 94 96 75 180 130 84 120 #> [511] 84 139 91 91 99 163 145 125 76 129 68 124 114 130 125 #> [526] 87 97 116 117 111 122 107 86 91 77 132 105 57 127 129 #> [541] 100 128 90 84 88 186 187 131 164 189 116 84 114 88 84 #> [556] 124 97 110 103 85 125 198 87 99 91 95 99 92 154 121 #> [571] 78 130 111 98 143 119 108 118 133 197 151 109 121 100 124 #> [586] 93 143 103 176 73 111 112 132 82 123 188 67 89 173 109 #> [601] 108 96 124 150 183 124 181 92 152 111 106 174 168 105 138 #> [616] 106 117 68 112 119 112 92 183 94 108 90 125 132 128 94 #> [631] 114 102 111 128 92 104 104 94 97 100 102 128 147 90 103 #> [646] 157 167 179 136 107 91 117 123 120 106 155 101 120 127 80 #> [661] 162 199 167 145 115 112 145 111 98 154 165 99 68 123 91 #> [676] 195 156 93 121 101 56 162 95 125 136 129 130 107 140 144 #> [691] 107 158 121 129 90 142 169 99 127 118 122 125 168 129 110 #> [706] 80 115 127 164 93 158 126 129 134 102 187 173 94 108 97 #> [721] 83 114 149 117 111 112 116 141 175 92 130 120 174 106 105 #> [736] 95 126 65 99 102 120 102 109 140 153 100 147 81 187 162 #> [751] 136 121 108 181 154 128 137 123 106 190 88 170 89 101 122 #> [766] 121 126 93