Copies its input outnum times. This PipeOp usually not needed, because copying happens automatically when one
PipeOp is followed by multiple different PipeOps. However, when constructing big Graphs using the
%>>%-operator, PipeOpCopy can be helpful to specify which PipeOp gets connected to which.
Construction
outnum::numeric(1)
Number of output channels, and therefore number of copies being made.id::character(1)
Identifier of resulting object, default"copy".param_vals:: namedlist
List of hyperparameter settings, overwriting the hyperparameter settings that would otherwise be set during construction. Defaultlist().
Input and Output Channels
PipeOpCopy has one input channel named "input", taking any input ("*") both during training and prediction.
PipeOpCopy has multiple output channels depending on the outnum construction argument, named "output1", "output2", ...
All output channels produce the object given as input ("*").
State
The $state is left empty (list()).
Internals
Note that copies are not clones, but only reference copies. This affects R6-objects: If R6 objects are copied using
PipeOpCopy, they must be cloned beforehand.
Fields
Only fields inherited from PipeOp.
Methods
Only methods inherited from PipeOp.
See also
https://mlr-org.com/pipeops.html
Other PipeOps:
PipeOp,
PipeOpEncodePL,
PipeOpEnsemble,
PipeOpImpute,
PipeOpTargetTrafo,
PipeOpTaskPreproc,
PipeOpTaskPreprocSimple,
mlr_pipeops,
mlr_pipeops_adas,
mlr_pipeops_blsmote,
mlr_pipeops_boxcox,
mlr_pipeops_branch,
mlr_pipeops_chunk,
mlr_pipeops_classbalancing,
mlr_pipeops_classifavg,
mlr_pipeops_classweights,
mlr_pipeops_colapply,
mlr_pipeops_collapsefactors,
mlr_pipeops_colroles,
mlr_pipeops_datefeatures,
mlr_pipeops_decode,
mlr_pipeops_encode,
mlr_pipeops_encodeimpact,
mlr_pipeops_encodelmer,
mlr_pipeops_encodeplquantiles,
mlr_pipeops_encodepltree,
mlr_pipeops_featureunion,
mlr_pipeops_filter,
mlr_pipeops_fixfactors,
mlr_pipeops_histbin,
mlr_pipeops_ica,
mlr_pipeops_imputeconstant,
mlr_pipeops_imputehist,
mlr_pipeops_imputelearner,
mlr_pipeops_imputemean,
mlr_pipeops_imputemedian,
mlr_pipeops_imputemode,
mlr_pipeops_imputeoor,
mlr_pipeops_imputesample,
mlr_pipeops_kernelpca,
mlr_pipeops_learner,
mlr_pipeops_learner_pi_cvplus,
mlr_pipeops_learner_quantiles,
mlr_pipeops_missind,
mlr_pipeops_modelmatrix,
mlr_pipeops_multiplicityexply,
mlr_pipeops_multiplicityimply,
mlr_pipeops_mutate,
mlr_pipeops_nearmiss,
mlr_pipeops_nmf,
mlr_pipeops_nop,
mlr_pipeops_ovrsplit,
mlr_pipeops_ovrunite,
mlr_pipeops_pca,
mlr_pipeops_proxy,
mlr_pipeops_quantilebin,
mlr_pipeops_randomprojection,
mlr_pipeops_randomresponse,
mlr_pipeops_regravg,
mlr_pipeops_removeconstants,
mlr_pipeops_renamecolumns,
mlr_pipeops_replicate,
mlr_pipeops_rowapply,
mlr_pipeops_scale,
mlr_pipeops_scalemaxabs,
mlr_pipeops_scalerange,
mlr_pipeops_select,
mlr_pipeops_smote,
mlr_pipeops_smotenc,
mlr_pipeops_spatialsign,
mlr_pipeops_subsample,
mlr_pipeops_targetinvert,
mlr_pipeops_targetmutate,
mlr_pipeops_targettrafoscalerange,
mlr_pipeops_textvectorizer,
mlr_pipeops_threshold,
mlr_pipeops_tomek,
mlr_pipeops_tunethreshold,
mlr_pipeops_unbranch,
mlr_pipeops_updatetarget,
mlr_pipeops_vtreat,
mlr_pipeops_yeojohnson
Other Placeholder Pipeops:
mlr_pipeops_nop
Examples
# The following copies the output of 'scale' automatically to both
# 'pca' and 'nop'
po("scale") %>>%
gunion(list(
po("pca"),
po("nop")
))
#> Graph with 3 PipeOps:
#> ID State sccssors prdcssors
#> <char> <char> <char> <char>
#> scale <<UNTRAINED>> pca,nop
#> pca <<UNTRAINED>> scale
#> nop <<UNTRAINED>> scale
# The following would not work: the '%>>%'-operator does not know
# which output to connect to which input
# > gunion(list(
# > po("scale"),
# > po("select")
# > )) %>>%
# > gunion(list(
# > po("pca"),
# > po("nop"),
# > po("imputemean")
# > ))
# Instead, the 'copy' operator makes clear which output gets copied.
gunion(list(
po("scale") %>>% po("copy", outnum = 2),
po("select")
)) %>>%
gunion(list(
po("pca"),
po("nop"),
po("imputemean")
))
#> Graph with 6 PipeOps:
#> ID State sccssors prdcssors
#> <char> <char> <char> <char>
#> scale <<UNTRAINED>> copy
#> select <<UNTRAINED>> imputemean
#> copy <<UNTRAINED>> pca,nop scale
#> imputemean <<UNTRAINED>> select
#> pca <<UNTRAINED>> copy
#> nop <<UNTRAINED>> copy
