Down- and Up-Sampling Imbalanced Data
downSample
will randomly sample a data set so that all classes have
the same frequency as the minority class. upSample
samples with
replacement to make the class distributions equal
downSample(x, y, list = FALSE, yname = "Class")
x |
a matrix or data frame of predictor variables |
y |
a factor variable with the class memberships |
list |
should the function return |
yname |
if |
Simple random sampling is used to down-sample for the majority class(es). Note that the minority class data are left intact and that the samples will be re-ordered in the down-sampled version.
For up-sampling, all the original data are left intact and additional samples are added to the minority classes with replacement.
Either a data frame or a list with elements x
and y
.
Max Kuhn
## A ridiculous example... data(oil) table(oilType) downSample(fattyAcids, oilType) upSample(fattyAcids, oilType)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.