From 0691830d2832efc8d8947a116a3f558acb500aa9 Mon Sep 17 00:00:00 2001 From: Alexander Winterstetter Date: Tue, 26 Aug 2025 19:57:26 +0200 Subject: [PATCH 01/11] first commit - creation off PipeOp File --- .DS_Store | Bin 0 -> 10244 bytes R/PipeOpBasisSplines.R | 36 ++++++++++++++++++++++++++++++++++++ tests/.DS_Store | Bin 0 -> 6148 bytes 3 files changed, 36 insertions(+) create mode 100644 .DS_Store create mode 100644 R/PipeOpBasisSplines.R create mode 100644 tests/.DS_Store diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..b55fd3589ce30e7bb66466c2878aaef27b218957 GIT binary patch literal 10244 zcmeHMO>7%Q6n>K*Y}W~KngmJ^l2uCx(U9h+LLd~?bsUw5k_0xV9Ac<;m5+DiyK|Gj@^x>&ZVS0A7lrFa=iISi_7^TT{ftD*RNWZ~nz-Pc` zz-Pc`z-QpU!T>(ASqX-P^v^y6J_9}j4F*_#h~mLy+?7W{^3;JRz6C(pgU!5PJ;Ev| zqppm*@<>S3U?IX3r7$J#7J~?LY>&FQxGRr@6y`wO%?EMsOxzs`;djUWqZ|$-E~J0< z8SoisWq|G7dte+&po1gt-^u0CAz4?Z$zrzV+_p?+<@{PSqD1`dIC~39r7g z)%-R43N~n9seWDf3jOMUl>M7|`^Kf;gnu2;O+W99R{iDt^+FCD{OM4bH)z2f9hLyu z$c+EZ3)TQ6q!LZf)VF{M;ya)>( zuRlhl>~#-DX2K>=6-OTGgi~UJAI1>Z=tGX|>OmtiN#7iec6uc$@emTWHaH&tUTf>AhC1>|`anO{Ke=R98CLWInAHoW|^<MBq9K4v`qC06P=Tz-P&RS=+<30gIaHn&X+MKBZ$Wg{mJ4yLB2#-h{HPaKX#51yQw7>k~ne*Ew-6dZ}2 zekzsSHp(V_6`8|AL=M6SrMPaK*{ES8dZFeddbp@=}NAko287S?K)|FU&}_0d!Q+; z_9dy-)mp$yHLTtRi;Z>GXU-l)@ zDlegvtBvG~csWI>8fB@7q>K1k+Ae93E_i#4&zDk^wK6-pbp5RQVKriu}HNh z7?!{kn_hgGVJXi6TV1Lwadko}O!TjxMsKBlWJb<^+DIx2qM1C`3SV2=o{_T-UteBtu;xphg zaCb7$Ey9Y1QOz-NFnKzfqtWCE-8cTO)a>|1*jj~DP@h2f5bsK|8MvI{{R&(*mM8@ literal 0 HcmV?d00001 diff --git a/R/PipeOpBasisSplines.R b/R/PipeOpBasisSplines.R new file mode 100644 index 000000000..e1c30e4d2 --- /dev/null +++ b/R/PipeOpBasisSplines.R @@ -0,0 +1,36 @@ +# DRAFT + +PipeOpBasisSplines = R6Class("PipeOpBasisSplines", + inherit = PipeOpTaskPreproc, + public = list( + initialize = function(id = "basissplines", param_vals = list()) { + ps = ps( + factor = p_fct(levels = c("polynomial", "natural cubic"), default = `placeholder`, tags = "train") # tag basissplines? + ) + ps$values = list() + super$initialize(id = id, param_set = ps, param_vals = param_vals, feature_types = c("numeric", "integer")) + } + ), + private = list( + .train_dt = function(dt, levels, target) { + }, + .predict_dt = function(dt, levels, target) { + } + ) +) + + + + + +task = tsk("mtcars") + +list(task)[[1]]$data() +pop = po("modelmatrix", formula = ~ splines::ns(task$data()$cyl, 2) + splines::ns(task$data()$hp, 2)) +pop$train(list(task))[[1]]$data() + +fit <- lm(mpg ~ splines::ns(cyl, df = 2) + splines::ns(hp, df = 2), data = mtcars) +model.matrix(fit) # this is what we want to get as a result from PipeOpSplineBasis + +as.data.frame(stats::model.matrix(mpg ~ splines::ns(cyl, 2) + splines::ns(task$data()$hp, 2), data = mtcars)) +?model.matrix diff --git a/tests/.DS_Store b/tests/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..476f8b9815c295ab2132595f1864e453dcf45067 GIT binary patch literal 6148 zcmeHKO>Wab6n?J_G)aLtZ33kT$s!x1N>!2AqMA?y5kd(`RVCslIL;)o>UtvENoiNP z0tes#tT+G{V8am*M}RFWc=J;=ZOWEbXrA=ud-HzA_UG}82LP}<>fQse03b~&FqNg| z3=wgmGcu<=DMFNEBrpIMl1jk6nQY@Q3>XG38Uy0nO+x|L(=u% zQph?Z-}lBtm5*OL!@!S|jg9Y?g>&<%OP3eYne5_~tJiW?erY*h$QO&(Z>$t=uHIU0 zTgx5S+wDhu6m}o+fJfzE#9sCzzuOqPo*(v`3450`{6p5ZmQJPCS@+GcYx`hGIfY|~ z9PUZPSSZJ<_Ifc(np1YGZRKJw;z3a3v7h)nY`uyHe7};gy-L{Qbj7jH_Nzk?ig#EP z6VB8$TW%D&VV{)`UI%W61=X<3lZ5XzeUFFg&U12D>eeDAhAeIVlr%!gd3I#nRfYv6 zWdH@+jawRN53EC7YyeXe=o95l zPax_VIe!N9Yfmqp|E-uiFbo(5E*Jx1eXvOdIvOVm<XIfD+VyN)z~W2Bk8?$=HbL%Ym>eu6(aH`3S|j3dOMbe*os$3 brBKWk2BD*IqL4f!=0`x%U>d`~KV{$#oMx{P literal 0 HcmV?d00001 From e091bccac1facb7d3a729c4c21d4277d91e6b6e9 Mon Sep 17 00:00:00 2001 From: Alexander Winterstetter Date: Wed, 27 Aug 2025 11:54:21 +0200 Subject: [PATCH 02/11] ideas for paste0 impelmented --- .DS_Store | Bin 10244 -> 10244 bytes R/PipeOpBasisSplines.R | 26 +++++++++++++++++++------- 2 files changed, 19 insertions(+), 7 deletions(-) diff --git a/.DS_Store b/.DS_Store index b55fd3589ce30e7bb66466c2878aaef27b218957..c72441dc51b9f50c6f80ed33baf8af21bd42bda5 100644 GIT binary patch delta 99 zcmZn(XbIRLDZwNqGg(^Vj&!^Le{n{Bxo2{IUO-W5S!QZ^L?)0OoLQARSx8cYsqVyN y8%bF%PGyGx1~8bMEU73d$*9Dr&1k}C%V^K&!5GLG#F)&O!I;UIwRx^&Iv)U}Wf_nF delta 99 zcmZn(XbIRLDZwNyHCbBXj&ww3a(-TLW>spu0Do~tez_-*8&H&5mYG^USx8cYssF)b y8%bF%WrqL;FyNe=EU73dz^KHi&1k}C%V^K&!5GLG#F)&O!I;Tdw0W*%Iv)VA${Du+ diff --git a/R/PipeOpBasisSplines.R b/R/PipeOpBasisSplines.R index e1c30e4d2..a88fde846 100644 --- a/R/PipeOpBasisSplines.R +++ b/R/PipeOpBasisSplines.R @@ -1,27 +1,40 @@ # DRAFT PipeOpBasisSplines = R6Class("PipeOpBasisSplines", - inherit = PipeOpTaskPreproc, + inherit = PipeOpTaskPreprocSimple, public = list( initialize = function(id = "basissplines", param_vals = list()) { ps = ps( - factor = p_fct(levels = c("polynomial", "natural cubic"), default = `placeholder`, tags = "train") # tag basissplines? + factor = p_fct(levels = c("polynomial", "cubic"), default = "polynomial", tags = c("train", "basissplines")), # tag basissplines? + df = p_int(lower = 1, upper = Inf, tags = c("train", "basissplines")) ) ps$values = list() - super$initialize(id = id, param_set = ps, param_vals = param_vals, feature_types = c("numeric", "integer")) + super$initialize(id = id, param_set = ps, param_vals = param_vals) } ), private = list( - .train_dt = function(dt, levels, target) { - }, - .predict_dt = function(dt, levels, target) { + .transform_dt = function(dt, levels) { + browser() + + dt } + # output + # eval(parse(text = paste0("splines::ns(", "dt[[", 3,"]], ", 2, ")"))) ) ) +mlr_pipeops$add("basissplines", PipeOpBasisSplines) + +po = po("basissplines") + +po$train(list(tsk("mtcars"))) +# df als hyperparameterf +# das ziel ist es dass wir diese model.matrix für alle features kriegen +# original features behalten dann feature_union ==> egaluser verantwortung +#splines.cyl.1 task = tsk("mtcars") @@ -33,4 +46,3 @@ fit <- lm(mpg ~ splines::ns(cyl, df = 2) + splines::ns(hp, df = 2), data = mtcar model.matrix(fit) # this is what we want to get as a result from PipeOpSplineBasis as.data.frame(stats::model.matrix(mpg ~ splines::ns(cyl, 2) + splines::ns(task$data()$hp, 2), data = mtcars)) -?model.matrix From 2a9aa3e0baed8edd95f4e8d86ca5020a046816eb Mon Sep 17 00:00:00 2001 From: Alexander Winterstetter Date: Tue, 2 Sep 2025 08:59:41 +0100 Subject: [PATCH 03/11] reworking paste in PipeOpBasisSplines.(train-method does not work as of now) --- R/PipeOpBasisSplines.R | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/R/PipeOpBasisSplines.R b/R/PipeOpBasisSplines.R index a88fde846..9550974d9 100644 --- a/R/PipeOpBasisSplines.R +++ b/R/PipeOpBasisSplines.R @@ -15,11 +15,13 @@ PipeOpBasisSplines = R6Class("PipeOpBasisSplines", private = list( .transform_dt = function(dt, levels) { browser() - + single_string = paste0( + "splines::ns(mtcars[[", seq_along(dt), "]] , ", df, ")") + formula = paste(single_string, collapse = " + ") + stats::model.matrix(as.formula(paste(task$target_names , "~", formula)), data = dt) dt } # output - # eval(parse(text = paste0("splines::ns(", "dt[[", 3,"]], ", 2, ")"))) ) ) From 63be01536a39469b1d13430912888805377f4428 Mon Sep 17 00:00:00 2001 From: Alexander Winterstetter Date: Wed, 3 Sep 2025 20:31:40 +0100 Subject: [PATCH 04/11] BasisSplines PipeOp works in general (playing around with param df here, so it works not exactly) --- R/PipeOpBasisSplines.R | 24 +++++++++++++++++------- 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/R/PipeOpBasisSplines.R b/R/PipeOpBasisSplines.R index 9550974d9..f2e1702a4 100644 --- a/R/PipeOpBasisSplines.R +++ b/R/PipeOpBasisSplines.R @@ -6,7 +6,7 @@ PipeOpBasisSplines = R6Class("PipeOpBasisSplines", initialize = function(id = "basissplines", param_vals = list()) { ps = ps( factor = p_fct(levels = c("polynomial", "cubic"), default = "polynomial", tags = c("train", "basissplines")), # tag basissplines? - df = p_int(lower = 1, upper = Inf, tags = c("train", "basissplines")) + df = p_int(default = 2, lower = 1, upper = Inf, tags = c("train", "basissplines")) ) ps$values = list() super$initialize(id = id, param_set = ps, param_vals = param_vals) @@ -16,10 +16,17 @@ PipeOpBasisSplines = R6Class("PipeOpBasisSplines", .transform_dt = function(dt, levels) { browser() single_string = paste0( - "splines::ns(mtcars[[", seq_along(dt), "]] , ", df, ")") - formula = paste(single_string, collapse = " + ") - stats::model.matrix(as.formula(paste(task$target_names , "~", formula)), data = dt) - dt + "splines::ns(dt[[", seq_along(dt), "]] , ", self$param_set$get_values()$df, ")") + string = paste(" ~ ", paste(single_string, collapse = " + ")) + result = as.data.frame(stats::model.matrix(formula(string), data = dt)) + k = 1 + for (j in colnames(dt)) { + for (i in seq_len(df)) { + colnames(result)[k + 1] = paste0("splines.", j, ".", i) + k = k + 1 + } + } + result } # output ) @@ -28,7 +35,7 @@ PipeOpBasisSplines = R6Class("PipeOpBasisSplines", mlr_pipeops$add("basissplines", PipeOpBasisSplines) po = po("basissplines") - +sel_cyl = selector_grep("cyl|disp|am") po$train(list(tsk("mtcars"))) # df als hyperparameterf @@ -41,7 +48,10 @@ po$train(list(tsk("mtcars"))) task = tsk("mtcars") list(task)[[1]]$data() -pop = po("modelmatrix", formula = ~ splines::ns(task$data()$cyl, 2) + splines::ns(task$data()$hp, 2)) +pop = po("modelmatrix", formula = ~ splines::ns(task$data()$cyl, 2) + splines::ns(task$data()$hp, 2) + + splines::ns(task$data()$disp, 2) + splines::ns(task$data()$drat, 2) + splines::ns(task$data()$wt, 2) + + splines::ns(task$data()$qsec, 2) + splines::ns(task$data()$vs, 2) + splines::ns(task$data()$am, 2) + + splines::ns(task$data()$gear, 2) + splines::ns(task$data()$carb, 2)) pop$train(list(task))[[1]]$data() fit <- lm(mpg ~ splines::ns(cyl, df = 2) + splines::ns(hp, df = 2), data = mtcars) From 7bd06761a020b5c3c4d8e23fde4bd3c7987e2258 Mon Sep 17 00:00:00 2001 From: Alexander Winterstetter Date: Wed, 3 Sep 2025 21:01:56 +0100 Subject: [PATCH 05/11] hp implemented via init --- R/PipeOpBasisSplines.R | 44 ++++++++++++++++++++++++------------------ 1 file changed, 25 insertions(+), 19 deletions(-) diff --git a/R/PipeOpBasisSplines.R b/R/PipeOpBasisSplines.R index f2e1702a4..332d65183 100644 --- a/R/PipeOpBasisSplines.R +++ b/R/PipeOpBasisSplines.R @@ -4,19 +4,25 @@ PipeOpBasisSplines = R6Class("PipeOpBasisSplines", inherit = PipeOpTaskPreprocSimple, public = list( initialize = function(id = "basissplines", param_vals = list()) { + #browser() ps = ps( - factor = p_fct(levels = c("polynomial", "cubic"), default = "polynomial", tags = c("train", "basissplines")), # tag basissplines? - df = p_int(default = 2, lower = 1, upper = Inf, tags = c("train", "basissplines")) + factor = p_fct(levels = c("polynomial", "cubic"), init = "polynomial", tags = c("train", "basissplines")), # tag basissplines? + df = p_int(init = 2, lower = 1, upper = Inf, tags = c("train", "basissplines")) ) - ps$values = list() - super$initialize(id = id, param_set = ps, param_vals = param_vals) + super$initialize(id = id, param_set = ps, param_vals = param_vals) } ), private = list( .transform_dt = function(dt, levels) { browser() - single_string = paste0( - "splines::ns(dt[[", seq_along(dt), "]] , ", self$param_set$get_values()$df, ")") + if (self$param_set$get_values()$factor == "polynomial") { + single_string = + invoke(.f = paste0, .args = list("splines::bs(dt[[", seq_along(dt), "]] , ", self$param_set$get_values()$df, ")")) + } + else { + single_string = + invoke(.f = paste0, .args = list("splines::ns(dt[[", seq_along(dt), "]] , ", self$param_set$get_values()$df, ")")) + } string = paste(" ~ ", paste(single_string, collapse = " + ")) result = as.data.frame(stats::model.matrix(formula(string), data = dt)) k = 1 @@ -34,9 +40,9 @@ PipeOpBasisSplines = R6Class("PipeOpBasisSplines", mlr_pipeops$add("basissplines", PipeOpBasisSplines) -po = po("basissplines") -sel_cyl = selector_grep("cyl|disp|am") -po$train(list(tsk("mtcars"))) +# po = po("basissplines") +# sel_cyl = selector_grep("cyl|disp|am") +# po$train(list(tsk("mtcars"))) # df als hyperparameterf # das ziel ist es dass wir diese model.matrix für alle features kriegen @@ -45,16 +51,16 @@ po$train(list(tsk("mtcars"))) #splines.cyl.1 -task = tsk("mtcars") +# task = tsk("mtcars") -list(task)[[1]]$data() -pop = po("modelmatrix", formula = ~ splines::ns(task$data()$cyl, 2) + splines::ns(task$data()$hp, 2) + - splines::ns(task$data()$disp, 2) + splines::ns(task$data()$drat, 2) + splines::ns(task$data()$wt, 2) + - splines::ns(task$data()$qsec, 2) + splines::ns(task$data()$vs, 2) + splines::ns(task$data()$am, 2) + - splines::ns(task$data()$gear, 2) + splines::ns(task$data()$carb, 2)) -pop$train(list(task))[[1]]$data() +# list(task)[[1]]$data() +# pop = po("modelmatrix", formula = ~ splines::ns(task$data()$cyl, 2) + splines::ns(task$data()$hp, 2) + +# splines::ns(task$data()$disp, 2) + splines::ns(task$data()$drat, 2) + splines::ns(task$data()$wt, 2) + +# splines::ns(task$data()$qsec, 2) + splines::ns(task$data()$vs, 2) + splines::ns(task$data()$am, 2) + +# splines::ns(task$data()$gear, 2) + splines::ns(task$data()$carb, 2)) +# pop$train(list(task))[[1]]$data() -fit <- lm(mpg ~ splines::ns(cyl, df = 2) + splines::ns(hp, df = 2), data = mtcars) -model.matrix(fit) # this is what we want to get as a result from PipeOpSplineBasis +# fit <- lm(mpg ~ splines::ns(cyl, df = 2) + splines::ns(hp, df = 2), data = mtcars) +# model.matrix(fit) # this is what we want to get as a result from PipeOpSplineBasis -as.data.frame(stats::model.matrix(mpg ~ splines::ns(cyl, 2) + splines::ns(task$data()$hp, 2), data = mtcars)) +# as.data.frame(stats::model.matrix(mpg ~ splines::ns(cyl, 2) + splines::ns(task$data()$hp, 2), data = mtcars)) From aaa8950968c948bdb9f764bc69c3fe829fe5e3e4 Mon Sep 17 00:00:00 2001 From: Alexander Winterstetter Date: Fri, 5 Sep 2025 08:53:43 +0100 Subject: [PATCH 06/11] PipeOpBasisSplines working version --- R/PipeOpBasisSplines.R | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/R/PipeOpBasisSplines.R b/R/PipeOpBasisSplines.R index 332d65183..75a1e884a 100644 --- a/R/PipeOpBasisSplines.R +++ b/R/PipeOpBasisSplines.R @@ -15,34 +15,34 @@ PipeOpBasisSplines = R6Class("PipeOpBasisSplines", private = list( .transform_dt = function(dt, levels) { browser() - if (self$param_set$get_values()$factor == "polynomial") { + pv = self$param_set$get_values(tags = "train") + if (pv$factor == "polynomial") { single_string = - invoke(.f = paste0, .args = list("splines::bs(dt[[", seq_along(dt), "]] , ", self$param_set$get_values()$df, ")")) + invoke(.f = paste0, .args = list("splines::bs(dt[[", seq_along(dt), "]] , ", pv$df, ")")) } else { single_string = - invoke(.f = paste0, .args = list("splines::ns(dt[[", seq_along(dt), "]] , ", self$param_set$get_values()$df, ")")) + invoke(.f = paste0, .args = list("splines::ns(dt[[", seq_along(dt), "]] , ", pv$df, ")")) } string = paste(" ~ ", paste(single_string, collapse = " + ")) result = as.data.frame(stats::model.matrix(formula(string), data = dt)) k = 1 for (j in colnames(dt)) { - for (i in seq_len(df)) { + for (i in seq_len(pv$df)) { colnames(result)[k + 1] = paste0("splines.", j, ".", i) k = k + 1 } } result } - # output ) ) mlr_pipeops$add("basissplines", PipeOpBasisSplines) -# po = po("basissplines") +# po = po("basissplines", df = 3) # sel_cyl = selector_grep("cyl|disp|am") -# po$train(list(tsk("mtcars"))) +# po$train(list(tsk("mtcars")))[[1]]$data() # df als hyperparameterf # das ziel ist es dass wir diese model.matrix für alle features kriegen @@ -60,6 +60,14 @@ mlr_pipeops$add("basissplines", PipeOpBasisSplines) # splines::ns(task$data()$gear, 2) + splines::ns(task$data()$carb, 2)) # pop$train(list(task))[[1]]$data() +# pob = po("modelmatrix", formula = ~ splines::bs(task$data()$cyl, 2) + splines::bs(task$data()$hp, 2) + +# splines::bs(task$data()$disp, 2) + splines::bs(task$data()$drat, 2) + splines::bs(task$data()$wt, 2) + +# splines::bs(task$data()$qsec, 2) + splines::bs(task$data()$vs, 2) + splines::bs(task$data()$am, 2) + +# splines::bs(task$data()$gear, 2) + splines::bs(task$data()$carb, 2)) + +# pob$train(list(task))[[1]]$data() + + # fit <- lm(mpg ~ splines::ns(cyl, df = 2) + splines::ns(hp, df = 2), data = mtcars) # model.matrix(fit) # this is what we want to get as a result from PipeOpSplineBasis From c0acfe5e4a8e57cf8aea85e5869bcb12b2bfc3c9 Mon Sep 17 00:00:00 2001 From: Alexander Winterstetter Date: Fri, 5 Sep 2025 20:30:14 +0100 Subject: [PATCH 07/11] added PipeOpBasisSplines.R in DESCRIPTION-file --- DESCRIPTION | 1 + 1 file changed, 1 insertion(+) diff --git a/DESCRIPTION b/DESCRIPTION index ebd01913c..983e1ad69 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -128,6 +128,7 @@ Collate: 'NO_OP.R' 'PipeOpTaskPreproc.R' 'PipeOpADAS.R' + 'PipeOpBasisSplines.R' 'PipeOpBLSmote.R' 'PipeOpBoxCox.R' 'PipeOpBranch.R' From b862ea6ef50c60c0f64efeec1d98f254b77a1229 Mon Sep 17 00:00:00 2001 From: Alexander Winterstetter Date: Fri, 5 Sep 2025 21:11:52 +0100 Subject: [PATCH 08/11] revised column-renaming of the result added documentation --- R/PipeOpBasisSplines.R | 69 ++++++++++++++++++++++++++++++++++++++---- 1 file changed, 63 insertions(+), 6 deletions(-) diff --git a/R/PipeOpBasisSplines.R b/R/PipeOpBasisSplines.R index 75a1e884a..ac755360c 100644 --- a/R/PipeOpBasisSplines.R +++ b/R/PipeOpBasisSplines.R @@ -1,4 +1,60 @@ -# DRAFT +#' @title Transforms Columns using Splines Methods by Constructing a Model Matrix +#' +#' @usage NULL +#' @name mlr_pipeops_basissplines +#' @format [`R6Class`][R6::R6Class] object inheriting from [`PipeOpTaskPreprocSimple`]/[`PipeOpTaskPreproc`]/[`PipeOp`]. +#' +#' @description +#' Transforms Columns using Splines Methods by Constructing a Model Matrix. +#' +#' @section Construction: +#' ``` +#' po("basissplines", param_vals = list()) +#' ``` +#' +#' * `id` :: `character(1)`\cr +#' Identifier of resulting object, default `"basissplines"`. +#' * `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 is the input [`Task`][mlr3::Task] with the selected columns transformed according to the specified Splines Method. +#' +#' @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: +#' * `hp` :: `CHARACTER` \cr +#' Number of bins to create. Default is `2`. +#' * `df` :: `INTEGER` \cr +#' Number of bins to create. Default is `2` +#' +#' @section Internals: +#' For creating the Splines uses the [`splines::bs`]/[`splines::bn`] function. +#' Uses the [`stats::model.matrix()`] function. +#' +#' @section Fields: +#' Only fields inherited from [`PipeOp`]. +#' +#' @section Methods: +#' Only methods inherited from [`PipeOpTaskPreprocSimple`]/[`PipeOpTaskPreproc`]/[`PipeOp`]. +#' +#' @examples +#' library("mlr3") +#' +#' task = tsk("iris") +#' pop = po("basissplines") +#' +#' pop$train(list(task))[[1]]$data() +#' +#' pop$state +#' @family PipeOps +#' @template seealso_pipeopslist +#' @include PipeOpTaskPreproc.R +#' @export PipeOpBasisSplines = R6Class("PipeOpBasisSplines", inherit = PipeOpTaskPreprocSimple, @@ -7,14 +63,14 @@ PipeOpBasisSplines = R6Class("PipeOpBasisSplines", #browser() ps = ps( factor = p_fct(levels = c("polynomial", "cubic"), init = "polynomial", tags = c("train", "basissplines")), # tag basissplines? - df = p_int(init = 2, lower = 1, upper = Inf, tags = c("train", "basissplines")) + df = p_int(init = 3, lower = 1, upper = Inf, tags = c("train", "basissplines")) ) super$initialize(id = id, param_set = ps, param_vals = param_vals) } ), private = list( .transform_dt = function(dt, levels) { - browser() + #browser() pv = self$param_set$get_values(tags = "train") if (pv$factor == "polynomial") { single_string = @@ -26,10 +82,11 @@ PipeOpBasisSplines = R6Class("PipeOpBasisSplines", } string = paste(" ~ ", paste(single_string, collapse = " + ")) result = as.data.frame(stats::model.matrix(formula(string), data = dt)) + max_df = as.numeric(max(regmatches(colnames(result), regexpr("[0-9]+$", colnames(result))))) k = 1 for (j in colnames(dt)) { - for (i in seq_len(pv$df)) { - colnames(result)[k + 1] = paste0("splines.", j, ".", i) + for (i in seq_len(max_df)) { + colnames(result)[k + 1] = paste0("splines.", j, ".", tail(strsplit(colnames(result)[[k + 1]], "")[[1]], 1)) k = k + 1 } } @@ -40,7 +97,7 @@ PipeOpBasisSplines = R6Class("PipeOpBasisSplines", mlr_pipeops$add("basissplines", PipeOpBasisSplines) -# po = po("basissplines", df = 3) +# po = po("basissplines", df = 2) # sel_cyl = selector_grep("cyl|disp|am") # po$train(list(tsk("mtcars")))[[1]]$data() From 250e4fe778a1646fad7a0f4f0fb0f282c3007682 Mon Sep 17 00:00:00 2001 From: Alexander Winterstetter Date: Sun, 7 Sep 2025 08:18:34 +0100 Subject: [PATCH 09/11] updated DESCRIPTION; NAMESPACE ran devtools::check() --- DESCRIPTION | 5 +- NAMESPACE | 1 + R/PipeOpBasisSplines.R | 17 ++- man/PipeOp.Rd | 1 + man/PipeOpEncodePL.Rd | 1 + man/PipeOpEnsemble.Rd | 1 + man/PipeOpImpute.Rd | 1 + man/PipeOpTargetTrafo.Rd | 1 + man/PipeOpTaskPreproc.Rd | 1 + man/PipeOpTaskPreprocSimple.Rd | 1 + man/mlr_pipeops.Rd | 1 + man/mlr_pipeops_adas.Rd | 1 + man/mlr_pipeops_basissplines.Rd | 166 +++++++++++++++++++++++ man/mlr_pipeops_blsmote.Rd | 1 + man/mlr_pipeops_boxcox.Rd | 1 + man/mlr_pipeops_branch.Rd | 1 + man/mlr_pipeops_chunk.Rd | 1 + man/mlr_pipeops_classbalancing.Rd | 1 + man/mlr_pipeops_classifavg.Rd | 1 + man/mlr_pipeops_classweights.Rd | 1 + man/mlr_pipeops_colapply.Rd | 1 + man/mlr_pipeops_collapsefactors.Rd | 1 + man/mlr_pipeops_colroles.Rd | 1 + man/mlr_pipeops_copy.Rd | 1 + man/mlr_pipeops_datefeatures.Rd | 1 + man/mlr_pipeops_decode.Rd | 1 + man/mlr_pipeops_encode.Rd | 1 + man/mlr_pipeops_encodeimpact.Rd | 1 + man/mlr_pipeops_encodelmer.Rd | 1 + man/mlr_pipeops_encodeplquantiles.Rd | 1 + man/mlr_pipeops_encodepltree.Rd | 1 + man/mlr_pipeops_featureunion.Rd | 1 + man/mlr_pipeops_filter.Rd | 1 + man/mlr_pipeops_fixfactors.Rd | 1 + man/mlr_pipeops_histbin.Rd | 1 + man/mlr_pipeops_ica.Rd | 1 + man/mlr_pipeops_imputeconstant.Rd | 1 + man/mlr_pipeops_imputehist.Rd | 1 + man/mlr_pipeops_imputelearner.Rd | 1 + man/mlr_pipeops_imputemean.Rd | 1 + man/mlr_pipeops_imputemedian.Rd | 1 + man/mlr_pipeops_imputemode.Rd | 1 + man/mlr_pipeops_imputeoor.Rd | 1 + man/mlr_pipeops_imputesample.Rd | 1 + man/mlr_pipeops_kernelpca.Rd | 1 + man/mlr_pipeops_learner.Rd | 1 + man/mlr_pipeops_learner_pi_cvplus.Rd | 1 + man/mlr_pipeops_learner_quantiles.Rd | 1 + man/mlr_pipeops_missind.Rd | 1 + man/mlr_pipeops_modelmatrix.Rd | 1 + man/mlr_pipeops_multiplicityexply.Rd | 1 + man/mlr_pipeops_multiplicityimply.Rd | 1 + man/mlr_pipeops_mutate.Rd | 1 + man/mlr_pipeops_nearmiss.Rd | 1 + man/mlr_pipeops_nmf.Rd | 1 + man/mlr_pipeops_nop.Rd | 1 + man/mlr_pipeops_ovrsplit.Rd | 1 + man/mlr_pipeops_ovrunite.Rd | 1 + man/mlr_pipeops_pca.Rd | 5 +- man/mlr_pipeops_proxy.Rd | 1 + man/mlr_pipeops_quantilebin.Rd | 1 + man/mlr_pipeops_randomprojection.Rd | 1 + man/mlr_pipeops_randomresponse.Rd | 1 + man/mlr_pipeops_regravg.Rd | 1 + man/mlr_pipeops_removeconstants.Rd | 1 + man/mlr_pipeops_renamecolumns.Rd | 1 + man/mlr_pipeops_replicate.Rd | 1 + man/mlr_pipeops_rowapply.Rd | 1 + man/mlr_pipeops_scale.Rd | 1 + man/mlr_pipeops_scalemaxabs.Rd | 1 + man/mlr_pipeops_scalerange.Rd | 1 + man/mlr_pipeops_select.Rd | 1 + man/mlr_pipeops_smote.Rd | 1 + man/mlr_pipeops_smotenc.Rd | 1 + man/mlr_pipeops_spatialsign.Rd | 1 + man/mlr_pipeops_subsample.Rd | 1 + man/mlr_pipeops_targetinvert.Rd | 1 + man/mlr_pipeops_targetmutate.Rd | 1 + man/mlr_pipeops_targettrafoscalerange.Rd | 1 + man/mlr_pipeops_textvectorizer.Rd | 1 + man/mlr_pipeops_threshold.Rd | 1 + man/mlr_pipeops_tomek.Rd | 1 + man/mlr_pipeops_tunethreshold.Rd | 1 + man/mlr_pipeops_unbranch.Rd | 1 + man/mlr_pipeops_updatetarget.Rd | 1 + man/mlr_pipeops_vtreat.Rd | 1 + man/mlr_pipeops_yeojohnson.Rd | 1 + 87 files changed, 265 insertions(+), 11 deletions(-) create mode 100644 man/mlr_pipeops_basissplines.Rd diff --git a/DESCRIPTION b/DESCRIPTION index 983e1ad69..346dddc49 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -101,7 +101,8 @@ Suggests: future, htmlwidgets, ranger, - themis + themis, + splines ByteCompile: true Encoding: UTF-8 Config/testthat/edition: 3 @@ -128,8 +129,8 @@ Collate: 'NO_OP.R' 'PipeOpTaskPreproc.R' 'PipeOpADAS.R' - 'PipeOpBasisSplines.R' 'PipeOpBLSmote.R' + 'PipeOpBasisSplines.R' 'PipeOpBoxCox.R' 'PipeOpBranch.R' 'PipeOpChunk.R' diff --git a/NAMESPACE b/NAMESPACE index 1a2ae274e..73091720f 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -99,6 +99,7 @@ export(NO_OP) export(PipeOp) export(PipeOpADAS) export(PipeOpBLSmote) +export(PipeOpBasisSplines) export(PipeOpBoxCox) export(PipeOpBranch) export(PipeOpChunk) diff --git a/R/PipeOpBasisSplines.R b/R/PipeOpBasisSplines.R index ac755360c..418c83cda 100644 --- a/R/PipeOpBasisSplines.R +++ b/R/PipeOpBasisSplines.R @@ -27,13 +27,16 @@ #' #' @section Parameters: #' The parameters are the parameters inherited from [`PipeOpTaskPreproc`], as well as: -#' * `hp` :: `CHARACTER` \cr -#' Number of bins to create. Default is `2`. -#' * `df` :: `INTEGER` \cr -#' Number of bins to create. Default is `2` +#' * `hp` :: `character(1)` \cr +#' "Polynomial" when polynomial splines are applied [`splines::bs`] or +#' "Cubic" when natural cubic splines are applied [`splines::bs`]. +#' Default is "polynomial". +#' * `df` :: `integer(1)` \cr +#' Number of degrees of freedom for calculation of splines basis matrix. +#' Default is NULL. #' #' @section Internals: -#' For creating the Splines uses the [`splines::bs`]/[`splines::bn`] function. +#' For creating the Splines uses the [`splines::bs`]/[`splines::ns`] function. #' Uses the [`stats::model.matrix()`] function. #' #' @section Fields: @@ -63,7 +66,7 @@ PipeOpBasisSplines = R6Class("PipeOpBasisSplines", #browser() ps = ps( factor = p_fct(levels = c("polynomial", "cubic"), init = "polynomial", tags = c("train", "basissplines")), # tag basissplines? - df = p_int(init = 3, lower = 1, upper = Inf, tags = c("train", "basissplines")) + df = p_int(init = 1, lower = 1, upper = Inf, tags = c("train", "basissplines")) ) super$initialize(id = id, param_set = ps, param_vals = param_vals) } @@ -97,7 +100,7 @@ PipeOpBasisSplines = R6Class("PipeOpBasisSplines", mlr_pipeops$add("basissplines", PipeOpBasisSplines) -# po = po("basissplines", df = 2) +# po = po("basissplines") # sel_cyl = selector_grep("cyl|disp|am") # po$train(list(tsk("mtcars")))[[1]]$data() diff --git a/man/PipeOp.Rd b/man/PipeOp.Rd index f5921c3a0..30ead24b3 100644 --- a/man/PipeOp.Rd +++ b/man/PipeOp.Rd @@ -286,6 +286,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/PipeOpEncodePL.Rd b/man/PipeOpEncodePL.Rd index 4407d32a0..d2192657a 100644 --- a/man/PipeOpEncodePL.Rd +++ b/man/PipeOpEncodePL.Rd @@ -110,6 +110,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/PipeOpEnsemble.Rd b/man/PipeOpEnsemble.Rd index 415859086..8649e8ec6 100644 --- a/man/PipeOpEnsemble.Rd +++ b/man/PipeOpEnsemble.Rd @@ -107,6 +107,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/PipeOpImpute.Rd b/man/PipeOpImpute.Rd index b8a2aa73f..fe397c494 100644 --- a/man/PipeOpImpute.Rd +++ b/man/PipeOpImpute.Rd @@ -173,6 +173,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/PipeOpTargetTrafo.Rd b/man/PipeOpTargetTrafo.Rd index 99d957a39..73b30fa8a 100644 --- a/man/PipeOpTargetTrafo.Rd +++ b/man/PipeOpTargetTrafo.Rd @@ -146,6 +146,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/PipeOpTaskPreproc.Rd b/man/PipeOpTaskPreproc.Rd index 75afdab08..a31f62dc1 100644 --- a/man/PipeOpTaskPreproc.Rd +++ b/man/PipeOpTaskPreproc.Rd @@ -203,6 +203,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/PipeOpTaskPreprocSimple.Rd b/man/PipeOpTaskPreprocSimple.Rd index 9463f488d..91eb94dc1 100644 --- a/man/PipeOpTaskPreprocSimple.Rd +++ b/man/PipeOpTaskPreprocSimple.Rd @@ -146,6 +146,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreproc}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops.Rd b/man/mlr_pipeops.Rd index c41449bbe..ef26a86dd 100644 --- a/man/mlr_pipeops.Rd +++ b/man/mlr_pipeops.Rd @@ -98,6 +98,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreproc}}, \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_adas.Rd b/man/mlr_pipeops_adas.Rd index 33a094003..27c549407 100644 --- a/man/mlr_pipeops_adas.Rd +++ b/man/mlr_pipeops_adas.Rd @@ -107,6 +107,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreproc}}, \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_basissplines.Rd b/man/mlr_pipeops_basissplines.Rd new file mode 100644 index 000000000..efa562fb6 --- /dev/null +++ b/man/mlr_pipeops_basissplines.Rd @@ -0,0 +1,166 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/PipeOpBasisSplines.R +\name{mlr_pipeops_basissplines} +\alias{mlr_pipeops_basissplines} +\alias{PipeOpBasisSplines} +\title{Transforms Columns using Splines Methods by Constructing a Model Matrix} +\format{ +\code{\link[R6:R6Class]{R6Class}} object inheriting from \code{\link{PipeOpTaskPreprocSimple}}/\code{\link{PipeOpTaskPreproc}}/\code{\link{PipeOp}}. +} +\description{ +Transforms Columns using Splines Methods by Constructing a Model Matrix. +} +\section{Construction}{ + + +\if{html}{\out{
}}\preformatted{po("basissplines", param_vals = list()) +}\if{html}{\out{
}} +\itemize{ +\item \code{id} :: \code{character(1)}\cr +Identifier of resulting object, default \code{"basissplines"}. +\item \code{param_vals} :: named \code{list}\cr +List of hyperparameter settings, overwriting the hyperparameter settings that would otherwise be set during construction. Default \code{list()}. +} +} + +\section{Input and Output Channels}{ + +Input and output channels are inherited from \code{\link{PipeOpTaskPreproc}}. + +The output is the input \code{\link[mlr3:Task]{Task}} with the selected columns transformed according to the specified Splines Method. +} + +\section{State}{ + +The \verb{$state} is a named \code{list} with the \verb{$state} elements inherited from \code{\link{PipeOpTaskPreproc}}. +} + +\section{Parameters}{ + +The parameters are the parameters inherited from \code{\link{PipeOpTaskPreproc}}, as well as: +\itemize{ +\item \code{hp} :: \code{character(1)} \cr +"Polynomial" when polynomial splines are applied \code{\link[splines:bs]{splines::bs}} or +"Cubic" when natural cubic splines are applied \code{\link[splines:bs]{splines::bs}}. +Default is "polynomial". +\item \code{df} :: \code{integer(1)} \cr +Number of degrees of freedom for calculation of splines basis matrix. +Default is NULL. +} +} + +\section{Internals}{ + +For creating the Splines uses the \code{\link[splines:bs]{splines::bs}}/\code{\link[splines:ns]{splines::ns}} function. +Uses the \code{\link[stats:model.matrix]{stats::model.matrix()}} function. +} + +\section{Fields}{ + +Only fields inherited from \code{\link{PipeOp}}. +} + +\section{Methods}{ + +Only methods inherited from \code{\link{PipeOpTaskPreprocSimple}}/\code{\link{PipeOpTaskPreproc}}/\code{\link{PipeOp}}. +} + +\examples{ +library("mlr3") + +task = tsk("iris") +pop = po("basissplines") + +pop$train(list(task))[[1]]$data() + +pop$state +} +\seealso{ +https://mlr-org.com/pipeops.html + +Other PipeOps: +\code{\link{PipeOp}}, +\code{\link{PipeOpEncodePL}}, +\code{\link{PipeOpEnsemble}}, +\code{\link{PipeOpImpute}}, +\code{\link{PipeOpTargetTrafo}}, +\code{\link{PipeOpTaskPreproc}}, +\code{\link{PipeOpTaskPreprocSimple}}, +\code{\link{mlr_pipeops}}, +\code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_blsmote}}, +\code{\link{mlr_pipeops_boxcox}}, +\code{\link{mlr_pipeops_branch}}, +\code{\link{mlr_pipeops_chunk}}, +\code{\link{mlr_pipeops_classbalancing}}, +\code{\link{mlr_pipeops_classifavg}}, +\code{\link{mlr_pipeops_classweights}}, +\code{\link{mlr_pipeops_colapply}}, +\code{\link{mlr_pipeops_collapsefactors}}, +\code{\link{mlr_pipeops_colroles}}, +\code{\link{mlr_pipeops_copy}}, +\code{\link{mlr_pipeops_datefeatures}}, +\code{\link{mlr_pipeops_decode}}, +\code{\link{mlr_pipeops_encode}}, +\code{\link{mlr_pipeops_encodeimpact}}, +\code{\link{mlr_pipeops_encodelmer}}, +\code{\link{mlr_pipeops_encodeplquantiles}}, +\code{\link{mlr_pipeops_encodepltree}}, +\code{\link{mlr_pipeops_featureunion}}, +\code{\link{mlr_pipeops_filter}}, +\code{\link{mlr_pipeops_fixfactors}}, +\code{\link{mlr_pipeops_histbin}}, +\code{\link{mlr_pipeops_ica}}, +\code{\link{mlr_pipeops_imputeconstant}}, +\code{\link{mlr_pipeops_imputehist}}, +\code{\link{mlr_pipeops_imputelearner}}, +\code{\link{mlr_pipeops_imputemean}}, +\code{\link{mlr_pipeops_imputemedian}}, +\code{\link{mlr_pipeops_imputemode}}, +\code{\link{mlr_pipeops_imputeoor}}, +\code{\link{mlr_pipeops_imputesample}}, +\code{\link{mlr_pipeops_kernelpca}}, +\code{\link{mlr_pipeops_learner}}, +\code{\link{mlr_pipeops_learner_pi_cvplus}}, +\code{\link{mlr_pipeops_learner_quantiles}}, +\code{\link{mlr_pipeops_missind}}, +\code{\link{mlr_pipeops_modelmatrix}}, +\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}}, +\code{\link{mlr_pipeops_ovrunite}}, +\code{\link{mlr_pipeops_pca}}, +\code{\link{mlr_pipeops_proxy}}, +\code{\link{mlr_pipeops_quantilebin}}, +\code{\link{mlr_pipeops_randomprojection}}, +\code{\link{mlr_pipeops_randomresponse}}, +\code{\link{mlr_pipeops_regravg}}, +\code{\link{mlr_pipeops_removeconstants}}, +\code{\link{mlr_pipeops_renamecolumns}}, +\code{\link{mlr_pipeops_replicate}}, +\code{\link{mlr_pipeops_rowapply}}, +\code{\link{mlr_pipeops_scale}}, +\code{\link{mlr_pipeops_scalemaxabs}}, +\code{\link{mlr_pipeops_scalerange}}, +\code{\link{mlr_pipeops_select}}, +\code{\link{mlr_pipeops_smote}}, +\code{\link{mlr_pipeops_smotenc}}, +\code{\link{mlr_pipeops_spatialsign}}, +\code{\link{mlr_pipeops_subsample}}, +\code{\link{mlr_pipeops_targetinvert}}, +\code{\link{mlr_pipeops_targetmutate}}, +\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}}, +\code{\link{mlr_pipeops_vtreat}}, +\code{\link{mlr_pipeops_yeojohnson}} +} +\concept{PipeOps} diff --git a/man/mlr_pipeops_blsmote.Rd b/man/mlr_pipeops_blsmote.Rd index 08c6b0d8d..59ff3b9f0 100644 --- a/man/mlr_pipeops_blsmote.Rd +++ b/man/mlr_pipeops_blsmote.Rd @@ -113,6 +113,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, \code{\link{mlr_pipeops_chunk}}, diff --git a/man/mlr_pipeops_boxcox.Rd b/man/mlr_pipeops_boxcox.Rd index 1b672f56c..cf498a7d7 100644 --- a/man/mlr_pipeops_boxcox.Rd +++ b/man/mlr_pipeops_boxcox.Rd @@ -97,6 +97,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_branch}}, \code{\link{mlr_pipeops_chunk}}, diff --git a/man/mlr_pipeops_branch.Rd b/man/mlr_pipeops_branch.Rd index db449402b..bbc3e3fa8 100644 --- a/man/mlr_pipeops_branch.Rd +++ b/man/mlr_pipeops_branch.Rd @@ -110,6 +110,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_chunk}}, diff --git a/man/mlr_pipeops_chunk.Rd b/man/mlr_pipeops_chunk.Rd index c82b399bf..378bab125 100644 --- a/man/mlr_pipeops_chunk.Rd +++ b/man/mlr_pipeops_chunk.Rd @@ -89,6 +89,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_classbalancing.Rd b/man/mlr_pipeops_classbalancing.Rd index fd95b8cdc..9a3aaa6d7 100644 --- a/man/mlr_pipeops_classbalancing.Rd +++ b/man/mlr_pipeops_classbalancing.Rd @@ -131,6 +131,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_classifavg.Rd b/man/mlr_pipeops_classifavg.Rd index beb232e55..84a146c11 100644 --- a/man/mlr_pipeops_classifavg.Rd +++ b/man/mlr_pipeops_classifavg.Rd @@ -104,6 +104,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_classweights.Rd b/man/mlr_pipeops_classweights.Rd index 678b0c4fa..e90ea90c1 100644 --- a/man/mlr_pipeops_classweights.Rd +++ b/man/mlr_pipeops_classweights.Rd @@ -109,6 +109,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_colapply.Rd b/man/mlr_pipeops_colapply.Rd index 11b1280c4..743f9cc25 100644 --- a/man/mlr_pipeops_colapply.Rd +++ b/man/mlr_pipeops_colapply.Rd @@ -119,6 +119,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_collapsefactors.Rd b/man/mlr_pipeops_collapsefactors.Rd index 60044c35b..4a938e933 100644 --- a/man/mlr_pipeops_collapsefactors.Rd +++ b/man/mlr_pipeops_collapsefactors.Rd @@ -122,6 +122,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_colroles.Rd b/man/mlr_pipeops_colroles.Rd index 6fe93c31a..a377755bc 100644 --- a/man/mlr_pipeops_colroles.Rd +++ b/man/mlr_pipeops_colroles.Rd @@ -100,6 +100,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_copy.Rd b/man/mlr_pipeops_copy.Rd index be1a51822..d1ddf06c4 100644 --- a/man/mlr_pipeops_copy.Rd +++ b/man/mlr_pipeops_copy.Rd @@ -105,6 +105,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_datefeatures.Rd b/man/mlr_pipeops_datefeatures.Rd index 8fd0d42f8..4a5ba2efb 100644 --- a/man/mlr_pipeops_datefeatures.Rd +++ b/man/mlr_pipeops_datefeatures.Rd @@ -128,6 +128,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_decode.Rd b/man/mlr_pipeops_decode.Rd index 76b08510b..2b9026f42 100644 --- a/man/mlr_pipeops_decode.Rd +++ b/man/mlr_pipeops_decode.Rd @@ -165,6 +165,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_encode.Rd b/man/mlr_pipeops_encode.Rd index bc286e459..68a488fd3 100644 --- a/man/mlr_pipeops_encode.Rd +++ b/man/mlr_pipeops_encode.Rd @@ -126,6 +126,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_encodeimpact.Rd b/man/mlr_pipeops_encodeimpact.Rd index 33776ca10..c0b9204d2 100644 --- a/man/mlr_pipeops_encodeimpact.Rd +++ b/man/mlr_pipeops_encodeimpact.Rd @@ -110,6 +110,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_encodelmer.Rd b/man/mlr_pipeops_encodelmer.Rd index 33cb75759..35031c4b6 100644 --- a/man/mlr_pipeops_encodelmer.Rd +++ b/man/mlr_pipeops_encodelmer.Rd @@ -122,6 +122,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_encodeplquantiles.Rd b/man/mlr_pipeops_encodeplquantiles.Rd index 700611995..1b13e3e9f 100644 --- a/man/mlr_pipeops_encodeplquantiles.Rd +++ b/man/mlr_pipeops_encodeplquantiles.Rd @@ -115,6 +115,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_encodepltree.Rd b/man/mlr_pipeops_encodepltree.Rd index 2053eb2b5..692a421d9 100644 --- a/man/mlr_pipeops_encodepltree.Rd +++ b/man/mlr_pipeops_encodepltree.Rd @@ -130,6 +130,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_featureunion.Rd b/man/mlr_pipeops_featureunion.Rd index de03f667a..39cab3958 100644 --- a/man/mlr_pipeops_featureunion.Rd +++ b/man/mlr_pipeops_featureunion.Rd @@ -123,6 +123,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_filter.Rd b/man/mlr_pipeops_filter.Rd index 308e66011..1aa6d0aa1 100644 --- a/man/mlr_pipeops_filter.Rd +++ b/man/mlr_pipeops_filter.Rd @@ -152,6 +152,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_fixfactors.Rd b/man/mlr_pipeops_fixfactors.Rd index 2eba59b67..02facdfc0 100644 --- a/man/mlr_pipeops_fixfactors.Rd +++ b/man/mlr_pipeops_fixfactors.Rd @@ -83,6 +83,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_histbin.Rd b/man/mlr_pipeops_histbin.Rd index 3baeeb225..0f7ef008e 100644 --- a/man/mlr_pipeops_histbin.Rd +++ b/man/mlr_pipeops_histbin.Rd @@ -95,6 +95,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_ica.Rd b/man/mlr_pipeops_ica.Rd index 6de1101d2..a17d6f9cb 100644 --- a/man/mlr_pipeops_ica.Rd +++ b/man/mlr_pipeops_ica.Rd @@ -123,6 +123,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_imputeconstant.Rd b/man/mlr_pipeops_imputeconstant.Rd index c2d42877b..b5f5abe34 100644 --- a/man/mlr_pipeops_imputeconstant.Rd +++ b/man/mlr_pipeops_imputeconstant.Rd @@ -103,6 +103,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_imputehist.Rd b/man/mlr_pipeops_imputehist.Rd index a53263e3e..0a7322fb0 100644 --- a/man/mlr_pipeops_imputehist.Rd +++ b/man/mlr_pipeops_imputehist.Rd @@ -89,6 +89,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_imputelearner.Rd b/man/mlr_pipeops_imputelearner.Rd index fb7c920a9..cbac8cc25 100644 --- a/man/mlr_pipeops_imputelearner.Rd +++ b/man/mlr_pipeops_imputelearner.Rd @@ -128,6 +128,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_imputemean.Rd b/man/mlr_pipeops_imputemean.Rd index a4b33fa0f..194b60ef9 100644 --- a/man/mlr_pipeops_imputemean.Rd +++ b/man/mlr_pipeops_imputemean.Rd @@ -82,6 +82,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_imputemedian.Rd b/man/mlr_pipeops_imputemedian.Rd index 8655e1ecc..9403aa358 100644 --- a/man/mlr_pipeops_imputemedian.Rd +++ b/man/mlr_pipeops_imputemedian.Rd @@ -82,6 +82,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_imputemode.Rd b/man/mlr_pipeops_imputemode.Rd index b35b83b13..424f825c1 100644 --- a/man/mlr_pipeops_imputemode.Rd +++ b/man/mlr_pipeops_imputemode.Rd @@ -89,6 +89,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_imputeoor.Rd b/man/mlr_pipeops_imputeoor.Rd index 187c23acf..0708c63b5 100644 --- a/man/mlr_pipeops_imputeoor.Rd +++ b/man/mlr_pipeops_imputeoor.Rd @@ -140,6 +140,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_imputesample.Rd b/man/mlr_pipeops_imputesample.Rd index e80476851..aba68ced6 100644 --- a/man/mlr_pipeops_imputesample.Rd +++ b/man/mlr_pipeops_imputesample.Rd @@ -84,6 +84,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_kernelpca.Rd b/man/mlr_pipeops_kernelpca.Rd index b18f5806f..2bd269135 100644 --- a/man/mlr_pipeops_kernelpca.Rd +++ b/man/mlr_pipeops_kernelpca.Rd @@ -98,6 +98,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_learner.Rd b/man/mlr_pipeops_learner.Rd index aab63683b..bf06c1bbc 100644 --- a/man/mlr_pipeops_learner.Rd +++ b/man/mlr_pipeops_learner.Rd @@ -124,6 +124,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_learner_pi_cvplus.Rd b/man/mlr_pipeops_learner_pi_cvplus.Rd index 188718a80..b5482745c 100644 --- a/man/mlr_pipeops_learner_pi_cvplus.Rd +++ b/man/mlr_pipeops_learner_pi_cvplus.Rd @@ -130,6 +130,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_learner_quantiles.Rd b/man/mlr_pipeops_learner_quantiles.Rd index 88244f271..71ff083b5 100644 --- a/man/mlr_pipeops_learner_quantiles.Rd +++ b/man/mlr_pipeops_learner_quantiles.Rd @@ -115,6 +115,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_missind.Rd b/man/mlr_pipeops_missind.Rd index 578044460..0bd90bb70 100644 --- a/man/mlr_pipeops_missind.Rd +++ b/man/mlr_pipeops_missind.Rd @@ -107,6 +107,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_modelmatrix.Rd b/man/mlr_pipeops_modelmatrix.Rd index f13f6f6e0..4c32ddde3 100644 --- a/man/mlr_pipeops_modelmatrix.Rd +++ b/man/mlr_pipeops_modelmatrix.Rd @@ -88,6 +88,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_multiplicityexply.Rd b/man/mlr_pipeops_multiplicityexply.Rd index 66f591560..7b838c7ce 100644 --- a/man/mlr_pipeops_multiplicityexply.Rd +++ b/man/mlr_pipeops_multiplicityexply.Rd @@ -89,6 +89,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_multiplicityimply.Rd b/man/mlr_pipeops_multiplicityimply.Rd index 2ac6cce80..045e08044 100644 --- a/man/mlr_pipeops_multiplicityimply.Rd +++ b/man/mlr_pipeops_multiplicityimply.Rd @@ -95,6 +95,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_mutate.Rd b/man/mlr_pipeops_mutate.Rd index 8adb36b74..dde4de93e 100644 --- a/man/mlr_pipeops_mutate.Rd +++ b/man/mlr_pipeops_mutate.Rd @@ -100,6 +100,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_nearmiss.Rd b/man/mlr_pipeops_nearmiss.Rd index 8d4898a66..4529a54ef 100644 --- a/man/mlr_pipeops_nearmiss.Rd +++ b/man/mlr_pipeops_nearmiss.Rd @@ -102,6 +102,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_nmf.Rd b/man/mlr_pipeops_nmf.Rd index c7b29b64c..ce48671fa 100644 --- a/man/mlr_pipeops_nmf.Rd +++ b/man/mlr_pipeops_nmf.Rd @@ -140,6 +140,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_nop.Rd b/man/mlr_pipeops_nop.Rd index 7526ba53d..546122264 100644 --- a/man/mlr_pipeops_nop.Rd +++ b/man/mlr_pipeops_nop.Rd @@ -85,6 +85,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_ovrsplit.Rd b/man/mlr_pipeops_ovrsplit.Rd index 062e086f8..59a91b883 100644 --- a/man/mlr_pipeops_ovrsplit.Rd +++ b/man/mlr_pipeops_ovrsplit.Rd @@ -102,6 +102,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_ovrunite.Rd b/man/mlr_pipeops_ovrunite.Rd index 3ce033902..965a13c31 100644 --- a/man/mlr_pipeops_ovrunite.Rd +++ b/man/mlr_pipeops_ovrunite.Rd @@ -97,6 +97,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_pca.Rd b/man/mlr_pipeops_pca.Rd index df34f6be2..04e4004ea 100644 --- a/man/mlr_pipeops_pca.Rd +++ b/man/mlr_pipeops_pca.Rd @@ -3,12 +3,12 @@ \name{mlr_pipeops_pca} \alias{mlr_pipeops_pca} \alias{PipeOpPCA} -\title{Principle Component Analysis} +\title{Principal Component Analysis} \format{ \code{\link[R6:R6Class]{R6Class}} object inheriting from \code{\link{PipeOpTaskPreproc}}/\code{\link{PipeOp}}. } \description{ -Extracts principle components from data. Only affects numerical features. +Extracts principal components from data. Only affects numerical features. See \code{\link[stats:prcomp]{stats::prcomp()}} for details. } \section{Construction}{ @@ -99,6 +99,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_proxy.Rd b/man/mlr_pipeops_proxy.Rd index d1b92cf65..66f40eeb9 100644 --- a/man/mlr_pipeops_proxy.Rd +++ b/man/mlr_pipeops_proxy.Rd @@ -107,6 +107,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_quantilebin.Rd b/man/mlr_pipeops_quantilebin.Rd index 3570d0503..ba3b5b9fd 100644 --- a/man/mlr_pipeops_quantilebin.Rd +++ b/man/mlr_pipeops_quantilebin.Rd @@ -87,6 +87,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_randomprojection.Rd b/man/mlr_pipeops_randomprojection.Rd index 486c91d5f..fd941ea28 100644 --- a/man/mlr_pipeops_randomprojection.Rd +++ b/man/mlr_pipeops_randomprojection.Rd @@ -99,6 +99,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_randomresponse.Rd b/man/mlr_pipeops_randomresponse.Rd index e3331d268..031a48273 100644 --- a/man/mlr_pipeops_randomresponse.Rd +++ b/man/mlr_pipeops_randomresponse.Rd @@ -111,6 +111,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_regravg.Rd b/man/mlr_pipeops_regravg.Rd index 76fac8eb0..90f7e2426 100644 --- a/man/mlr_pipeops_regravg.Rd +++ b/man/mlr_pipeops_regravg.Rd @@ -97,6 +97,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_removeconstants.Rd b/man/mlr_pipeops_removeconstants.Rd index 3da03d8ce..cb1aa976a 100644 --- a/man/mlr_pipeops_removeconstants.Rd +++ b/man/mlr_pipeops_removeconstants.Rd @@ -87,6 +87,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_renamecolumns.Rd b/man/mlr_pipeops_renamecolumns.Rd index 131433937..6d39fb21f 100644 --- a/man/mlr_pipeops_renamecolumns.Rd +++ b/man/mlr_pipeops_renamecolumns.Rd @@ -86,6 +86,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_replicate.Rd b/man/mlr_pipeops_replicate.Rd index 9d015566d..f95c23b26 100644 --- a/man/mlr_pipeops_replicate.Rd +++ b/man/mlr_pipeops_replicate.Rd @@ -79,6 +79,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_rowapply.Rd b/man/mlr_pipeops_rowapply.Rd index 62226792b..bece84fb3 100644 --- a/man/mlr_pipeops_rowapply.Rd +++ b/man/mlr_pipeops_rowapply.Rd @@ -85,6 +85,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_scale.Rd b/man/mlr_pipeops_scale.Rd index 3bf30b521..41c215e90 100644 --- a/man/mlr_pipeops_scale.Rd +++ b/man/mlr_pipeops_scale.Rd @@ -106,6 +106,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_scalemaxabs.Rd b/man/mlr_pipeops_scalemaxabs.Rd index 011f75107..5ca59d727 100644 --- a/man/mlr_pipeops_scalemaxabs.Rd +++ b/man/mlr_pipeops_scalemaxabs.Rd @@ -76,6 +76,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_scalerange.Rd b/man/mlr_pipeops_scalerange.Rd index 48af7d223..8e02086c4 100644 --- a/man/mlr_pipeops_scalerange.Rd +++ b/man/mlr_pipeops_scalerange.Rd @@ -86,6 +86,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_select.Rd b/man/mlr_pipeops_select.Rd index 7d678830b..5352b4fcb 100644 --- a/man/mlr_pipeops_select.Rd +++ b/man/mlr_pipeops_select.Rd @@ -98,6 +98,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_smote.Rd b/man/mlr_pipeops_smote.Rd index 0bfd310db..60d7829c2 100644 --- a/man/mlr_pipeops_smote.Rd +++ b/man/mlr_pipeops_smote.Rd @@ -104,6 +104,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_smotenc.Rd b/man/mlr_pipeops_smotenc.Rd index 5a231bb2a..a8afc77ad 100644 --- a/man/mlr_pipeops_smotenc.Rd +++ b/man/mlr_pipeops_smotenc.Rd @@ -116,6 +116,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_spatialsign.Rd b/man/mlr_pipeops_spatialsign.Rd index efad79930..e5f84cc05 100644 --- a/man/mlr_pipeops_spatialsign.Rd +++ b/man/mlr_pipeops_spatialsign.Rd @@ -81,6 +81,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_subsample.Rd b/man/mlr_pipeops_subsample.Rd index 6cd121c46..15a09a8af 100644 --- a/man/mlr_pipeops_subsample.Rd +++ b/man/mlr_pipeops_subsample.Rd @@ -106,6 +106,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_targetinvert.Rd b/man/mlr_pipeops_targetinvert.Rd index 33f65c50c..b12577de6 100644 --- a/man/mlr_pipeops_targetinvert.Rd +++ b/man/mlr_pipeops_targetinvert.Rd @@ -76,6 +76,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_targetmutate.Rd b/man/mlr_pipeops_targetmutate.Rd index b348d1ce3..9dad6c113 100644 --- a/man/mlr_pipeops_targetmutate.Rd +++ b/man/mlr_pipeops_targetmutate.Rd @@ -124,6 +124,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_targettrafoscalerange.Rd b/man/mlr_pipeops_targettrafoscalerange.Rd index 8400551c5..1c46e5209 100644 --- a/man/mlr_pipeops_targettrafoscalerange.Rd +++ b/man/mlr_pipeops_targettrafoscalerange.Rd @@ -95,6 +95,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_textvectorizer.Rd b/man/mlr_pipeops_textvectorizer.Rd index d40503694..d04b91b7d 100644 --- a/man/mlr_pipeops_textvectorizer.Rd +++ b/man/mlr_pipeops_textvectorizer.Rd @@ -200,6 +200,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_threshold.Rd b/man/mlr_pipeops_threshold.Rd index d8aa2fa5c..ff4dd28cf 100644 --- a/man/mlr_pipeops_threshold.Rd +++ b/man/mlr_pipeops_threshold.Rd @@ -89,6 +89,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_tomek.Rd b/man/mlr_pipeops_tomek.Rd index 7a3bee4bd..e6998de47 100644 --- a/man/mlr_pipeops_tomek.Rd +++ b/man/mlr_pipeops_tomek.Rd @@ -95,6 +95,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_tunethreshold.Rd b/man/mlr_pipeops_tunethreshold.Rd index f2707ef05..9f85e100e 100644 --- a/man/mlr_pipeops_tunethreshold.Rd +++ b/man/mlr_pipeops_tunethreshold.Rd @@ -115,6 +115,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_unbranch.Rd b/man/mlr_pipeops_unbranch.Rd index f79719aed..8ef0045f6 100644 --- a/man/mlr_pipeops_unbranch.Rd +++ b/man/mlr_pipeops_unbranch.Rd @@ -88,6 +88,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_updatetarget.Rd b/man/mlr_pipeops_updatetarget.Rd index 263b41ff3..2c9414cea 100644 --- a/man/mlr_pipeops_updatetarget.Rd +++ b/man/mlr_pipeops_updatetarget.Rd @@ -108,6 +108,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_vtreat.Rd b/man/mlr_pipeops_vtreat.Rd index 81514f09d..d6a52cbcd 100644 --- a/man/mlr_pipeops_vtreat.Rd +++ b/man/mlr_pipeops_vtreat.Rd @@ -162,6 +162,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, diff --git a/man/mlr_pipeops_yeojohnson.Rd b/man/mlr_pipeops_yeojohnson.Rd index f1823e343..163647673 100644 --- a/man/mlr_pipeops_yeojohnson.Rd +++ b/man/mlr_pipeops_yeojohnson.Rd @@ -98,6 +98,7 @@ Other PipeOps: \code{\link{PipeOpTaskPreprocSimple}}, \code{\link{mlr_pipeops}}, \code{\link{mlr_pipeops_adas}}, +\code{\link{mlr_pipeops_basissplines}}, \code{\link{mlr_pipeops_blsmote}}, \code{\link{mlr_pipeops_boxcox}}, \code{\link{mlr_pipeops_branch}}, From 6f243fa6b777fd55bac3bc7949d70bad5eea5f95 Mon Sep 17 00:00:00 2001 From: Alexander Winterstetter Date: Sun, 7 Sep 2025 16:36:58 +0100 Subject: [PATCH 10/11] added tests for PipeOpBasisSplines --- tests/testthat/test_pipeop_basissplines.R | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 tests/testthat/test_pipeop_basissplines.R diff --git a/tests/testthat/test_pipeop_basissplines.R b/tests/testthat/test_pipeop_basissplines.R new file mode 100644 index 000000000..20fd4937c --- /dev/null +++ b/tests/testthat/test_pipeop_basissplines.R @@ -0,0 +1,6 @@ +context("PipeOpBasisSplines") + +# test_that("PipeOpBasisSplines - basic properties", { +# task = mlr_tasks$get("mtcars") +# expect_datapreproc_pipeop_class(PipeOpBasisSplines, task = task) +# }) From a4564ce8331885de5a679d1a8a29144693baf03e Mon Sep 17 00:00:00 2001 From: Alexander Winterstetter Date: Fri, 12 Sep 2025 12:39:05 +0200 Subject: [PATCH 11/11] added test for po basissplines --- R/PipeOpBasisSplines.R | 67 +++++++++++++++++----- tests/testthat/test_pipeop_basissplines.R | 69 +++++++++++++++++++++-- 2 files changed, 118 insertions(+), 18 deletions(-) diff --git a/R/PipeOpBasisSplines.R b/R/PipeOpBasisSplines.R index 418c83cda..61276f7e8 100644 --- a/R/PipeOpBasisSplines.R +++ b/R/PipeOpBasisSplines.R @@ -27,7 +27,7 @@ #' #' @section Parameters: #' The parameters are the parameters inherited from [`PipeOpTaskPreproc`], as well as: -#' * `hp` :: `character(1)` \cr +#' * `factor` :: `character(1)` \cr #' "Polynomial" when polynomial splines are applied [`splines::bs`] or #' "Cubic" when natural cubic splines are applied [`splines::bs`]. #' Default is "polynomial". @@ -63,10 +63,10 @@ PipeOpBasisSplines = R6Class("PipeOpBasisSplines", inherit = PipeOpTaskPreprocSimple, public = list( initialize = function(id = "basissplines", param_vals = list()) { - #browser() ps = ps( - factor = p_fct(levels = c("polynomial", "cubic"), init = "polynomial", tags = c("train", "basissplines")), # tag basissplines? - df = p_int(init = 1, lower = 1, upper = Inf, tags = c("train", "basissplines")) + factor = p_fct(levels = c("polynomial", "cubic"), init = "polynomial", tags = c("train", "basissplines", "required")), + df = p_int(lower = 1, upper = Inf, special_vals = list(NULL), init = NULL, tags = c("train", "basissplines")), + degree = p_int(lower = 1, upper = Inf, depends = factor == "polynomial", tags = c("train", "basissplines")) ) super$initialize(id = id, param_set = ps, param_vals = param_vals) } @@ -74,15 +74,8 @@ PipeOpBasisSplines = R6Class("PipeOpBasisSplines", private = list( .transform_dt = function(dt, levels) { #browser() - pv = self$param_set$get_values(tags = "train") - if (pv$factor == "polynomial") { - single_string = - invoke(.f = paste0, .args = list("splines::bs(dt[[", seq_along(dt), "]] , ", pv$df, ")")) - } - else { - single_string = - invoke(.f = paste0, .args = list("splines::ns(dt[[", seq_along(dt), "]] , ", pv$df, ")")) - } + pv = self$param_set$get_values(tags = "basissplines") + single_string = mlr3misc::invoke(.f = paste0, .args = list(if (pv$factor == "polynomial") "splines::bs(dt[[" else "splines::ns(dt[[", seq_along(dt), "]]", if (!is.null(pv$df)) " , df = ", pv$df, if (!is.null(pv$degree)) ", degree = ", pv$degree, ")")) string = paste(" ~ ", paste(single_string, collapse = " + ")) result = as.data.frame(stats::model.matrix(formula(string), data = dt)) max_df = as.numeric(max(regmatches(colnames(result), regexpr("[0-9]+$", colnames(result))))) @@ -101,8 +94,54 @@ PipeOpBasisSplines = R6Class("PipeOpBasisSplines", mlr_pipeops$add("basissplines", PipeOpBasisSplines) # po = po("basissplines") +# po_result = po$train(list(tsk("iris")))[[1]]$data() + +# po_result_calc = stats::model.matrix(Species ~ splines::bs(Sepal.Length) + splines::bs(Sepal.Width) + splines::bs(Petal.Length) + splines::bs(Petal.Width), data = iris) + +# podf3 = po("basissplines", df = 3) +# podf3_result = podf3$train(list(tsk("iris")))[[1]]$data() +# podf3_result_calc = stats::model.matrix(Species ~ splines::bs(Sepal.Length, df = 3) + splines::bs(Sepal.Width, df = 3) + splines::bs(Petal.Length, df = 3) + splines::bs(Petal.Width, df = 3), data = iris) + +# podf4 = po("basissplines", df = 4) +# podf4_result = podf4$train(list(tsk("iris")))[[1]]$data() +# podf4_result_calc = stats::model.matrix(Species ~ splines::bs(Sepal.Length, df = 4) + splines::bs(Sepal.Width, df = 4) + splines::bs(Petal.Length, df = 4) + splines::bs(Petal.Width, df = 4), data = iris) + +# podf7 = po("basissplines", df = 7) +# podf7_result = podf7$train(list(tsk("iris")))[[1]]$data() +# podf7_result_calc = stats::model.matrix(Species ~ splines::bs(Sepal.Length, df = 7) + splines::bs(Sepal.Width, df = 7) + splines::bs(Petal.Length, df = 7) + splines::bs(Petal.Width, df = 7), data = iris) + +# podeg3df2 = po("basissplines", degree = 3, df = 2) +# podeg3df2_result = podeg3df2$train(list(tsk("iris")))[[1]]$data() +# podeg3df2_result_calc = stats::model.matrix(Species ~ splines::bs(Sepal.Length, degree = 3, df = 2) + splines::bs(Sepal.Width, degree = 3, df = 2) + splines::bs(Petal.Length, degree = 3, df = 2) + splines::bs(Petal.Width, degree = 3, df = 2), data = iris) + + +# podeg5df8 = po("basissplines", degree = 5, df = 8) +# podeg5df8_result = podeg5df8$train(list(tsk("iris")))[[1]]$data() +# podeg5df8_result_calc = stats::model.matrix(Species ~ splines::bs(Sepal.Length, degree = 5, df = 8) + splines::bs(Sepal.Width, degree = 5, df = 8) + splines::bs(Petal.Length, degree = 5, df = 8) + splines::bs(Petal.Width, degree = 5, df = 8), data = iris) + +# pons = po("basissplines", factor = "cubic") +# pons_result = pons$train(list(tsk("iris")))[[1]]$data() +# pons_result_calc = stats::model.matrix(Species ~ splines::ns(Sepal.Length) + splines::ns(Sepal.Width) + splines::ns(Petal.Length) + splines::ns(Petal.Width), data = iris) + +# pons_error = po("basissplines", factor = "cubic", df = 3, degree = 4) + +# ponsdf5 = po("basissplines", factor = "cubic", df = 5) +# ponsdf5_result = ponsdf5$train(list(tsk("iris")))[[1]]$data() +# ponsdf5_result_calc = stats::model.matrix(Species ~ splines::ns(Sepal.Length, df = 5) + splines::ns(Sepal.Width, df = 5) + splines::ns(Petal.Length, df = 5) + splines::ns(Petal.Width, df = 5), data = iris) + + + + +# selecting columns # sel_cyl = selector_grep("cyl|disp|am") -# po$train(list(tsk("mtcars")))[[1]]$data() +# pos = po("basissplines", affect_columns = sel_cyl) +# pos$train(list(tsk("mtcars")))[[1]]$data() + +# pop = po("basissplines", df = 5) +# pop$train(list(tsk("mtcars")))[[1]]$data() + +# poc = po("basissplines", df = 4, factor = "cubic") +# poc$train(list(tsk("mtcars")))[[1]]$data() # df als hyperparameterf # das ziel ist es dass wir diese model.matrix für alle features kriegen diff --git a/tests/testthat/test_pipeop_basissplines.R b/tests/testthat/test_pipeop_basissplines.R index 20fd4937c..70634428b 100644 --- a/tests/testthat/test_pipeop_basissplines.R +++ b/tests/testthat/test_pipeop_basissplines.R @@ -1,6 +1,67 @@ context("PipeOpBasisSplines") -# test_that("PipeOpBasisSplines - basic properties", { -# task = mlr_tasks$get("mtcars") -# expect_datapreproc_pipeop_class(PipeOpBasisSplines, task = task) -# }) +test_that("PipeOpBasisSplines - basic properties", { + browser() + task = mlr_tasks$get("mtcars") + expect_datapreproc_pipeop_class(PipeOpBasisSplines, task = task, deterministic_predict = FALSE) +}) + +test_that("Error when trying to pass degree argument while factor = cubic", { + expect_error(po("basissplines", factor = "cubic", degree = 3)) +}) + +test_that("results are identical as when calculating by hand", { + degree = c(1, 2, 3, 4, 5) + df = degree + 3 + task = tsk("iris") + for (j in degree) { + po = po("basissplines", df = df[[j]], degree = degree[[j]]) + result = po$train(list(task))[[1]]$data()[, -1] + result_calc = as.data.table(stats::model.matrix( + Species ~ splines::bs(Petal.Length, df = df[[j]], degree = degree[[j]]) + + splines::bs(Petal.Width, df = df[[j]], degree = degree[[j]]) + + splines::bs(Sepal.Length, df = df[[j]], degree = degree[[j]]) + + splines::bs(Sepal.Width, df = df[[j]], degree = degree[[j]]), + data = iris + )) + data.table::setnames(result, rep("", ncol(result))) + data.table::setnames(result_calc, rep("", ncol(result_calc))) + expect_equal(result, result_calc) + } + for (j in df) { + po = po("basissplines", df = j) + result = po$train(list(task))[[1]]$data()[, -1] + result_calc = as.data.table(stats::model.matrix( + Species ~ splines::bs(Petal.Length, df = j) + + splines::bs(Petal.Width, df = j) + + splines::bs(Sepal.Length, df = j) + + splines::bs(Sepal.Width, df = j), + data = iris + )) + data.table::setnames(result, rep("", ncol(result))) + data.table::setnames(result_calc, rep("", ncol(result_calc))) + expect_equal(result, result_calc) + } +}) + + +test_that("Selector", { + selector = list("Sepal.Length", "Sepal.Width", "Petal.Length", "Petal.Width") + task = tsk("iris") + factor = list("polynomial", "cubic") + for (i in seq_along(factor)) { + for (j in seq_along(selector)) { + po = po("basissplines", affect_columns = selector_grep(selector[[j]])) + single_string = paste0(if (factor[[i]] == "polynomial") "splines::bs(dt[[" else "splines::ns(dt[[", selector, "]]", ")") + result = po$train(list(task))[[1]]$data()[, -1] + result_calc = as.data.table(stats::model.matrix( + as.formula(paste("Species ~ splines::bs(", selector[[j]], ")")), + data = iris + )) + relevant_result = as.data.table(intersect(result_calc, result)) + data.table::setnames(result_calc, rep("", ncol(result_calc))) + data.table::setnames(relevant_result, rep("", ncol(relevant_result))) + expect_equal(result_calc, relevant_result) + } + } +})