diff --git a/DESCRIPTION b/DESCRIPTION index ef32405dc..53a9a06f2 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,6 +1,6 @@ Package: mlr3pipelines Title: Preprocessing Operators and Pipelines for 'mlr3' -Version: 0.7.0 +Version: 0.7.0-9000 Authors@R: c(person(given = "Martin", family = "Binder", @@ -163,6 +163,7 @@ Collate: 'PipeOpMutate.R' 'PipeOpNMF.R' 'PipeOpNOP.R' + 'PipeOpNearmiss.R' 'PipeOpOVR.R' 'PipeOpPCA.R' 'PipeOpProxy.R' @@ -183,6 +184,7 @@ Collate: 'PipeOpSubsample.R' 'PipeOpTextVectorizer.R' 'PipeOpThreshold.R' + 'PipeOpTomek.R' 'PipeOpTrafo.R' 'PipeOpTuneThreshold.R' 'PipeOpUnbranch.R' diff --git a/NAMESPACE b/NAMESPACE index 037f3a3e4..00539352c 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -132,6 +132,7 @@ export(PipeOpMultiplicityImply) export(PipeOpMutate) export(PipeOpNMF) export(PipeOpNOP) +export(PipeOpNearmiss) export(PipeOpOVRSplit) export(PipeOpOVRUnite) export(PipeOpPCA) @@ -160,6 +161,7 @@ export(PipeOpTaskPreproc) export(PipeOpTaskPreprocSimple) export(PipeOpTextVectorizer) export(PipeOpThreshold) +export(PipeOpTomek) export(PipeOpTuneThreshold) export(PipeOpUnbranch) export(PipeOpVtreat) diff --git a/NEWS.md b/NEWS.md index 78e830707..ab1bf02a0 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,3 +1,7 @@ +# mlr3pipelines 0.7.0-9000 + +* New down-sampling PipeOps for inbalanced data: `PipeOpTomek` / `po("tomek")` and `PipeOpNearmiss` / `po("nearmiss")` + # mlr3pipelines 0.7.0 * New PipeOp `PipeOpRowApply` / `po("rowapply")` @@ -16,9 +20,7 @@ * `as_data_table(po())` now works even when some `PipeOp`s can not be constructed. For these `PipeOp`s, `NA` is reported in most columns. * Compatibility with upcoming `mlr3` release. -* New PipeOp: `PipeOpRowApply` / `po("rowapply")` -* New PipeOps for handling inbalanced data: `PipeOpADAS` / `po("adas")` and `PipeOpBLSmote` / `po("blsmote")` -* New PipeOp for handling inbalanced data: `PipeOpSmoteNC` / `po("smotenc")` +* New PipeOps for handling inbalanced data: `PipeOpADAS` / `po("adas")`, `PipeOpBLSmote` / `po("blsmote")` and `PipeOpSmoteNC` / `po("smotenc")` # mlr3pipelines 0.6.0 diff --git a/R/PipeOpNearmiss.R b/R/PipeOpNearmiss.R new file mode 100644 index 000000000..cade2dea5 --- /dev/null +++ b/R/PipeOpNearmiss.R @@ -0,0 +1,110 @@ +#' @title Nearmiss Down-Sampling +#' +#' @usage NULL +#' @name mlr_pipeops_nearmiss +#' @format [`R6Class`][R6::R6Class] object inheriting from [`PipeOpTaskPreproc`]/[`PipeOp`]. +#' +#' @description +#' Generates a more balanced data set by down-sampling the instances of non-minority classes using the NEARMISS algorithm. +#' +#' The algorithm down-samples by selecting instances from the non-minority classes that have the smallest mean distance +#' to their `k` nearest neighbors of different classes. +#' For this only numeric and integer features are taken into account. These must have no missing values. +#' +#' This can only be applied to [classification tasks][mlr3::TaskClassif]. Multiclass classification is supported. +#' +#' See [`themis::nearmiss`] for details. +#' +#' @section Construction: +#' ``` +#' PipeOpNearmiss$new(id = "nearmiss", param_vals = list()) +#' ``` +#' +#' * `id` :: `character(1)`\cr +#' Identifier of resulting object, default `"nearmiss"`. +#' * `param_vals` :: named `list`\cr +#' List of hyperparameter settings, overwriting the hyperparameter settings that would otherwise be set during construction. Default `list()`. +#' +#' @section Input and Output Channels: +#' Input and output channels are inherited from [`PipeOpTaskPreproc`]. +#' +#' The output during training is the input [`Task`][mlr3::Task] with the rows removed from the non-minority classes. +#' The output during prediction is the unchanged input. +#' +#' @section State: +#' The `$state` is a named `list` with the `$state` elements inherited from [`PipeOpTaskPreproc`]. +#' +#' @section Parameters: +#' The parameters are the parameters inherited from [`PipeOpTaskPreproc`], as well as +#' * `k` :: `integer(1)`\cr +#' Number of nearest neighbors used for calculating the mean distances. Default is `5`. +#' * `under_ratio` :: `numeric(1)`\cr +#' Ratio of the minority-to-majority frequencies. This specifies the ratio to which the number of instances +#' in the non-minority classes get down-sampled to, relative to the number of instances of the minority class. +#' Default is `1`. For details, see [`themis::nearmiss`]. +#' +#' @section Fields: +#' Only fields inherited from [`PipeOpTaskPreproc`]/[`PipeOp`]. +#' +#' @section Methods: +#' Only methods inherited from [`PipeOpTaskPreproc`]/[`PipeOp`]. +#' +#' @references +#' `r format_bib("zhang2003")` +#' +#' @family PipeOps +#' @template seealso_pipeopslist +#' @include PipeOpTaskPreproc.R +#' @export +#' @examples +#' \dontshow{ if (requireNamespace("themis")) \{ } +#' library("mlr3") +#' +#' # Create example task +#' task = tsk("wine") +#' task$head() +#' table(task$data(cols = "type")) +#' +#' # Down-sample and balance data +#' pop = po("nearmiss") +#' nearmiss_result = pop$train(list(task))[[1]]$data() +#' nrow(nearmiss_result) +#' table(nearmiss_result$type) +#' \dontshow{ \} } +PipeOpNearmiss = R6Class("PipeOpNearmiss", + inherit = PipeOpTaskPreproc, + public = list( + initialize = function(id = "nearmiss", param_vals = list()) { + ps = ps( + k = p_int(lower = 1, default = 5, tags = c("train", "nearmiss")), + under_ratio = p_dbl(lower = 0, default = 1, tags = c("train", "nearmiss")) + ) + super$initialize(id, param_set = ps, param_vals = param_vals, packages = "themis", can_subset_cols = FALSE, + task_type = "TaskClassif", tags = "imbalanced data") + } + ), + private = list( + + .train_task = function(task) { + # Return task unchanged, if no feature columns exist + if (!length(task$feature_names)) { + return(task) + } + # At least one numeric or integer feature required + if (!any(task$feature_types$type %in% c("numeric", "integer"))) { + stop("Nearmiss needs at least one numeric or integer feature to work.") + } + # Subset columns to only include integer/numeric features and the target + type = id = NULL + cols = c(task$feature_types[type %in% c("integer", "numeric"), id], task$target_names) + # Down-sample data + dt = setDT(invoke(themis::nearmiss, df = task$data(cols = cols), var = task$target_names, + .args = self$param_set$get_values(tags = "nearmiss"))) + + keep = task$row_ids[as.integer(row.names(dt))] + task$filter(keep) + } + ) +) + +mlr_pipeops$add("nearmiss", PipeOpNearmiss) diff --git a/R/PipeOpTomek.R b/R/PipeOpTomek.R new file mode 100644 index 000000000..b14f8c921 --- /dev/null +++ b/R/PipeOpTomek.R @@ -0,0 +1,99 @@ +#' @title Tomek Down-Sampling +#' +#' @usage NULL +#' @name mlr_pipeops_tomek +#' @format [`R6Class`][R6::R6Class] object inheriting from [`PipeOpTaskPreproc`]/[`PipeOp`]. +#' +#' @description +#' Generates a cleaner data set by removing all majority-minority Tomek links. +#' +#' The algorithm down-samples the data by removing all pairs of observations that form a Tomek link, +#' i.e. a pair of observations that are nearest neighbors and belong to different classes. +#' For this only numeric and integer features are taken into account. These must have no missing values. +#' +#' This can only be applied to [classification tasks][mlr3::TaskClassif]. Multiclass classification is supported. +#' +#' See [`themis::tomek`] for details. +#' +#' @section Construction: +#' ``` +#' PipeOpTOmek$new(id = "tomek", param_vals = list()) +#' ``` +#' +#' * `id` :: `character(1)`\cr +#' Identifier of resulting object, default `"tomek"`. +#' * `param_vals` :: named `list`\cr +#' List of hyperparameter settings, overwriting the hyperparameter settings that would otherwise be set during construction. Default `list()`. +#' +#' @section Input and Output Channels: +#' Input and output channels are inherited from [`PipeOpTaskPreproc`]. +#' +#' The output during training is the input [`Task`][mlr3::Task] with removed rows for pairs of observations that form a Tomek link. +#' The output during prediction is the unchanged input. +#' +#' @section State: +#' The `$state` is a named `list` with the `$state` elements inherited from [`PipeOpTaskPreproc`]. +#' +#' @section Parameters: +#' The parameters are the parameters inherited from [`PipeOpTaskPreproc`]. +#' +#' @section Fields: +#' Only fields inherited from [`PipeOpTaskPreproc`]/[`PipeOp`]. +#' +#' @section Methods: +#' Only methods inherited from [`PipeOpTaskPreproc`]/[`PipeOp`]. +#' +#' @references +#' `r format_bib("tomek1976")` +#' +#' @family PipeOps +#' @template seealso_pipeopslist +#' @include PipeOpTaskPreproc.R +#' @export +#' @examples +#' \dontshow{ if (requireNamespace("themis")) \{ } +#' library("mlr3") +#' +#' # Create example task +#' task = tsk("iris") +#' task$head() +#' table(task$data(cols = "Species")) +#' +#' # Down-sample data +#' pop = po("tomek") +#' tomek_result = pop$train(list(task))[[1]]$data() +#' nrow(tomek_result) +#' table(tomek_result$Species) +#' \dontshow{ \} } +PipeOpTomek = R6Class("PipeOpTomek", + inherit = PipeOpTaskPreproc, + public = list( + initialize = function(id = "tomek", param_vals = list()) { + super$initialize(id, param_set = ps(), param_vals = param_vals, packages = "themis", can_subset_cols = FALSE, + task_type = "TaskClassif", tags = "imbalanced data") + } + ), + private = list( + + .train_task = function(task) { + # Return task unchanged, if no feature columns exist + if (!length(task$feature_names)) { + return(task) + } + # At least one numeric or integer feature required + if (!any(task$feature_types$type %in% c("numeric", "integer"))) { + stop("Tomek needs at least one numeric or integer feature to work.") + } + # Subset columns to only include integer/numeric features and the target + type = id = NULL + cols = c(task$feature_types[type %in% c("integer", "numeric"), id], task$target_names) + # Down-sample data + dt = setDT(invoke(themis::tomek, df = task$data(cols = cols), var = task$target_names)) + + keep = task$row_ids[as.integer(row.names(dt))] + task$filter(keep) + } + ) +) + +mlr_pipeops$add("tomek", PipeOpTomek) diff --git a/R/bibentries.R b/R/bibentries.R index ecd2f09d9..87ab522c5 100644 --- a/R/bibentries.R +++ b/R/bibentries.R @@ -54,6 +54,25 @@ bibentries = c( journal = "Journal of the American Statistical Association" ), + zhang2003 = bibentry("inproceedings", + year = "2003", + author = "Zhang, J. and Mani, I.", + title = "KNN Approach to Unbalanced Data Distributions: A Case Study Involving Information Extraction", + booktitle = "Proceedings of Workshop on Learning from Imbalanced Datasets (ICML)", + ), + + tomek1976 = bibentry("article", + doi = "10.1109/TSMC.1976.4309452", + author = "I. Tomek", + year = "1976", + title = "Two Modifications of CNN", + journal = "IEEE Transactions on Systems, Man and Cybernetics", + volume = "6", + number = "11", + pages = "769--772", + publisher = "IEEE" + ), + he_2008 = bibentry("InProceedings", author = "Haibo He and Yang Bai and Garcia, Edwardo A. and Shutao Li", booktitle = "2008 IEEE International Joint Conference on Neural Networks (IEEE World Congress on Computational Intelligence)", @@ -75,4 +94,5 @@ bibentries = c( pages = "878--887", isbn = "978-3-540-31902-3" ) + ) diff --git a/man/PipeOp.Rd b/man/PipeOp.Rd index 272f42272..e04b5cd15 100644 --- a/man/PipeOp.Rd +++ b/man/PipeOp.Rd @@ -309,6 +309,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -336,6 +337,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/PipeOpEnsemble.Rd b/man/PipeOpEnsemble.Rd index afdb26f49..ea902621f 100644 --- a/man/PipeOpEnsemble.Rd +++ b/man/PipeOpEnsemble.Rd @@ -141,6 +141,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -168,6 +169,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/PipeOpImpute.Rd b/man/PipeOpImpute.Rd index 1f4849561..56d4a8690 100644 --- a/man/PipeOpImpute.Rd +++ b/man/PipeOpImpute.Rd @@ -174,6 +174,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -201,6 +202,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/PipeOpTargetTrafo.Rd b/man/PipeOpTargetTrafo.Rd index 54743c3f2..31473482e 100644 --- a/man/PipeOpTargetTrafo.Rd +++ b/man/PipeOpTargetTrafo.Rd @@ -182,6 +182,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -209,6 +210,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/PipeOpTaskPreproc.Rd b/man/PipeOpTaskPreproc.Rd index 6fdb0b27f..43c04036a 100644 --- a/man/PipeOpTaskPreproc.Rd +++ b/man/PipeOpTaskPreproc.Rd @@ -237,6 +237,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -264,6 +265,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/PipeOpTaskPreprocSimple.Rd b/man/PipeOpTaskPreprocSimple.Rd index 718910f16..69e0186d3 100644 --- a/man/PipeOpTaskPreprocSimple.Rd +++ b/man/PipeOpTaskPreprocSimple.Rd @@ -174,6 +174,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -201,6 +202,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops.Rd b/man/mlr_pipeops.Rd index 51304c44e..0a9bddc1b 100644 --- a/man/mlr_pipeops.Rd +++ b/man/mlr_pipeops.Rd @@ -111,6 +111,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -138,6 +139,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_adas.Rd b/man/mlr_pipeops_adas.Rd index 0001cb2a1..8663baff4 100644 --- a/man/mlr_pipeops_adas.Rd +++ b/man/mlr_pipeops_adas.Rd @@ -134,6 +134,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -161,6 +162,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_blsmote.Rd b/man/mlr_pipeops_blsmote.Rd index 0a95d406f..0ad16183d 100644 --- a/man/mlr_pipeops_blsmote.Rd +++ b/man/mlr_pipeops_blsmote.Rd @@ -139,6 +139,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -166,6 +167,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_boxcox.Rd b/man/mlr_pipeops_boxcox.Rd index c52a389d0..2dd377c58 100644 --- a/man/mlr_pipeops_boxcox.Rd +++ b/man/mlr_pipeops_boxcox.Rd @@ -125,6 +125,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -152,6 +153,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_branch.Rd b/man/mlr_pipeops_branch.Rd index 9efd50e39..b2799c93f 100644 --- a/man/mlr_pipeops_branch.Rd +++ b/man/mlr_pipeops_branch.Rd @@ -143,6 +143,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -170,6 +171,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_chunk.Rd b/man/mlr_pipeops_chunk.Rd index 3b1cead00..2431862b6 100644 --- a/man/mlr_pipeops_chunk.Rd +++ b/man/mlr_pipeops_chunk.Rd @@ -122,6 +122,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -149,6 +150,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_classbalancing.Rd b/man/mlr_pipeops_classbalancing.Rd index 7f2b78431..1b4386e06 100644 --- a/man/mlr_pipeops_classbalancing.Rd +++ b/man/mlr_pipeops_classbalancing.Rd @@ -163,6 +163,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -190,6 +191,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_classifavg.Rd b/man/mlr_pipeops_classifavg.Rd index 43a0f4b1a..8a2d28851 100644 --- a/man/mlr_pipeops_classifavg.Rd +++ b/man/mlr_pipeops_classifavg.Rd @@ -139,6 +139,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -166,6 +167,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_classweights.Rd b/man/mlr_pipeops_classweights.Rd index 5b38abe05..baa195e12 100644 --- a/man/mlr_pipeops_classweights.Rd +++ b/man/mlr_pipeops_classweights.Rd @@ -142,6 +142,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -169,6 +170,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_colapply.Rd b/man/mlr_pipeops_colapply.Rd index 3237fb817..682b5e293 100644 --- a/man/mlr_pipeops_colapply.Rd +++ b/man/mlr_pipeops_colapply.Rd @@ -152,6 +152,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -179,6 +180,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_collapsefactors.Rd b/man/mlr_pipeops_collapsefactors.Rd index 4b54e5cec..f0e9f0599 100644 --- a/man/mlr_pipeops_collapsefactors.Rd +++ b/man/mlr_pipeops_collapsefactors.Rd @@ -119,6 +119,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -146,6 +147,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_colroles.Rd b/man/mlr_pipeops_colroles.Rd index fd92f10d8..2fa18c5a9 100644 --- a/man/mlr_pipeops_colroles.Rd +++ b/man/mlr_pipeops_colroles.Rd @@ -111,6 +111,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -138,6 +139,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_copy.Rd b/man/mlr_pipeops_copy.Rd index e00027bf7..b1e770b10 100644 --- a/man/mlr_pipeops_copy.Rd +++ b/man/mlr_pipeops_copy.Rd @@ -141,6 +141,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -168,6 +169,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_datefeatures.Rd b/man/mlr_pipeops_datefeatures.Rd index f0e8983f0..60dee4b79 100644 --- a/man/mlr_pipeops_datefeatures.Rd +++ b/man/mlr_pipeops_datefeatures.Rd @@ -158,6 +158,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -185,6 +186,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_encode.Rd b/man/mlr_pipeops_encode.Rd index 9ae76623f..79e39e75e 100644 --- a/man/mlr_pipeops_encode.Rd +++ b/man/mlr_pipeops_encode.Rd @@ -154,6 +154,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -181,6 +182,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_encodeimpact.Rd b/man/mlr_pipeops_encodeimpact.Rd index 34794b534..18f532a7b 100644 --- a/man/mlr_pipeops_encodeimpact.Rd +++ b/man/mlr_pipeops_encodeimpact.Rd @@ -136,6 +136,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -163,6 +164,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_encodelmer.Rd b/man/mlr_pipeops_encodelmer.Rd index 09c5ecfd2..9d5d7fa90 100644 --- a/man/mlr_pipeops_encodelmer.Rd +++ b/man/mlr_pipeops_encodelmer.Rd @@ -151,6 +151,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -178,6 +179,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_featureunion.Rd b/man/mlr_pipeops_featureunion.Rd index 51221b36f..20fe861b0 100644 --- a/man/mlr_pipeops_featureunion.Rd +++ b/man/mlr_pipeops_featureunion.Rd @@ -156,6 +156,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -183,6 +184,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_filter.Rd b/man/mlr_pipeops_filter.Rd index c12bf557d..ebd0ed711 100644 --- a/man/mlr_pipeops_filter.Rd +++ b/man/mlr_pipeops_filter.Rd @@ -187,6 +187,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -214,6 +215,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_fixfactors.Rd b/man/mlr_pipeops_fixfactors.Rd index d8883be9d..9bf3536f3 100644 --- a/man/mlr_pipeops_fixfactors.Rd +++ b/man/mlr_pipeops_fixfactors.Rd @@ -111,6 +111,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -138,6 +139,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_histbin.Rd b/man/mlr_pipeops_histbin.Rd index 424cc0b27..5d03b0fc3 100644 --- a/man/mlr_pipeops_histbin.Rd +++ b/man/mlr_pipeops_histbin.Rd @@ -123,6 +123,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -150,6 +151,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_ica.Rd b/man/mlr_pipeops_ica.Rd index 386243308..02435608b 100644 --- a/man/mlr_pipeops_ica.Rd +++ b/man/mlr_pipeops_ica.Rd @@ -151,6 +151,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -178,6 +179,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_imputeconstant.Rd b/man/mlr_pipeops_imputeconstant.Rd index f8a83821a..2bdd6a834 100644 --- a/man/mlr_pipeops_imputeconstant.Rd +++ b/man/mlr_pipeops_imputeconstant.Rd @@ -125,6 +125,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -152,6 +153,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_imputehist.Rd b/man/mlr_pipeops_imputehist.Rd index e9db73184..8d5e7e282 100644 --- a/man/mlr_pipeops_imputehist.Rd +++ b/man/mlr_pipeops_imputehist.Rd @@ -117,6 +117,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -144,6 +145,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_imputelearner.Rd b/man/mlr_pipeops_imputelearner.Rd index 2ea98c891..993218618 100644 --- a/man/mlr_pipeops_imputelearner.Rd +++ b/man/mlr_pipeops_imputelearner.Rd @@ -162,6 +162,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -189,6 +190,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_imputemean.Rd b/man/mlr_pipeops_imputemean.Rd index 8bb852bd1..743d5e40d 100644 --- a/man/mlr_pipeops_imputemean.Rd +++ b/man/mlr_pipeops_imputemean.Rd @@ -110,6 +110,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -137,6 +138,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_imputemedian.Rd b/man/mlr_pipeops_imputemedian.Rd index 96000e310..d6957908f 100644 --- a/man/mlr_pipeops_imputemedian.Rd +++ b/man/mlr_pipeops_imputemedian.Rd @@ -110,6 +110,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -137,6 +138,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_imputemode.Rd b/man/mlr_pipeops_imputemode.Rd index 4f6301738..2afef773d 100644 --- a/man/mlr_pipeops_imputemode.Rd +++ b/man/mlr_pipeops_imputemode.Rd @@ -117,6 +117,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -144,6 +145,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_imputeoor.Rd b/man/mlr_pipeops_imputeoor.Rd index 20bbc212f..f66d6e767 100644 --- a/man/mlr_pipeops_imputeoor.Rd +++ b/man/mlr_pipeops_imputeoor.Rd @@ -158,6 +158,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -185,6 +186,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_imputesample.Rd b/man/mlr_pipeops_imputesample.Rd index f170906b4..a798e003b 100644 --- a/man/mlr_pipeops_imputesample.Rd +++ b/man/mlr_pipeops_imputesample.Rd @@ -112,6 +112,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -139,6 +140,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_kernelpca.Rd b/man/mlr_pipeops_kernelpca.Rd index 02dd7b833..b80983868 100644 --- a/man/mlr_pipeops_kernelpca.Rd +++ b/man/mlr_pipeops_kernelpca.Rd @@ -126,6 +126,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -153,6 +154,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_learner.Rd b/man/mlr_pipeops_learner.Rd index e9ff48dac..bfb923270 100644 --- a/man/mlr_pipeops_learner.Rd +++ b/man/mlr_pipeops_learner.Rd @@ -157,6 +157,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -184,6 +185,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_missind.Rd b/man/mlr_pipeops_missind.Rd index 6767e406c..df3befe85 100644 --- a/man/mlr_pipeops_missind.Rd +++ b/man/mlr_pipeops_missind.Rd @@ -140,6 +140,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -167,6 +168,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_modelmatrix.Rd b/man/mlr_pipeops_modelmatrix.Rd index c6e8f210d..88feb3fdb 100644 --- a/man/mlr_pipeops_modelmatrix.Rd +++ b/man/mlr_pipeops_modelmatrix.Rd @@ -116,6 +116,7 @@ Other PipeOps: \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -143,6 +144,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_multiplicityexply.Rd b/man/mlr_pipeops_multiplicityexply.Rd index 12b97ef31..abdfe2f82 100644 --- a/man/mlr_pipeops_multiplicityexply.Rd +++ b/man/mlr_pipeops_multiplicityexply.Rd @@ -122,6 +122,7 @@ Other PipeOps: \code{\link{mlr_pipeops_modelmatrix}}, \code{\link{mlr_pipeops_multiplicityimply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -149,6 +150,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_multiplicityimply.Rd b/man/mlr_pipeops_multiplicityimply.Rd index f6ad1dece..23e0a3e1d 100644 --- a/man/mlr_pipeops_multiplicityimply.Rd +++ b/man/mlr_pipeops_multiplicityimply.Rd @@ -128,6 +128,7 @@ Other PipeOps: \code{\link{mlr_pipeops_modelmatrix}}, \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_mutate}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -155,6 +156,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_mutate.Rd b/man/mlr_pipeops_mutate.Rd index 9a44c8f71..4bc31cc8b 100644 --- a/man/mlr_pipeops_mutate.Rd +++ b/man/mlr_pipeops_mutate.Rd @@ -133,6 +133,7 @@ Other PipeOps: \code{\link{mlr_pipeops_modelmatrix}}, \code{\link{mlr_pipeops_multiplicityexply}}, \code{\link{mlr_pipeops_multiplicityimply}}, +\code{\link{mlr_pipeops_nearmiss}}, \code{\link{mlr_pipeops_nmf}}, \code{\link{mlr_pipeops_nop}}, \code{\link{mlr_pipeops_ovrsplit}}, @@ -160,6 +161,7 @@ Other PipeOps: \code{\link{mlr_pipeops_targettrafoscalerange}}, \code{\link{mlr_pipeops_textvectorizer}}, \code{\link{mlr_pipeops_threshold}}, +\code{\link{mlr_pipeops_tomek}}, \code{\link{mlr_pipeops_tunethreshold}}, \code{\link{mlr_pipeops_unbranch}}, \code{\link{mlr_pipeops_updatetarget}}, diff --git a/man/mlr_pipeops_nearmiss.Rd b/man/mlr_pipeops_nearmiss.Rd new file mode 100644 index 000000000..ce5a1908b --- /dev/null +++ b/man/mlr_pipeops_nearmiss.Rd @@ -0,0 +1,172 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/PipeOpNearmiss.R +\name{mlr_pipeops_nearmiss} +\alias{mlr_pipeops_nearmiss} +\alias{PipeOpNearmiss} +\title{Nearmiss Down-Sampling} +\format{ +\code{\link[R6:R6Class]{R6Class}} object inheriting from \code{\link{PipeOpTaskPreproc}}/\code{\link{PipeOp}}. +} +\description{ +Generates a more balanced data set by down-sampling the instances of non-minority classes using the NEARMISS algorithm. + +The algorithm down-samples by selecting instances from the non-minority classes that have the smallest mean distance +to their \code{k} nearest neighbors of different classes. +For this only numeric and integer features are taken into account. These must have no missing values. + +This can only be applied to \link[mlr3:TaskClassif]{classification tasks}. Multiclass classification is supported. + +See \code{\link[themis:nearmiss]{themis::nearmiss}} for details. +} +\section{Construction}{ + + +\if{html}{\out{