12 Use Caution in Terminology!
12.1 Optim
In the world of R, an algorithm may use the name “optim” if its core/workhorse function is either one of
- Brent–Dekker algorithm in one-dimensional optimization, via the function
optimize()and/or its aliasoptimise(). - Nelder-Mead, quasi-Newton, conjugate-gradient algorithms in higher-dimensional optimization, via the function
optim().
Otherwise, it is strongly advised not to name an algorithm using the word “optim”.
12.2 Split versus Partition
In the world of R, the term “split” often indicates a process without randomness, e.g., the S3 generic function split() (R version 4.5.3 (2026-03-11)) divides the input object into multiple groups specified by a pre-set formula or factor via the parameter f.
The term “partition”, on the contrary, often indicates either of the following
- a process with randomness, e.g.,
- the training/test partition in
createDataPartition()(Kuhn 2008, v7.0.1, GPL (>= 2)).
- the training/test partition in
- an algorithm to maximize/minimize an objective function, e.g.,
- the recursive partitioning in
rpart()(Therneau and Atkinson 2025, v4.1.24, GPL–2 | GPL-3) andctree()(Hothorn et al. 2006, v1.3.19, GPL–2), - the data clustering in partition.object (Maechler et al. 2025, v2.1.8.2, GPL (>= 2)).
- the recursive partitioning in