Learn R Programming

OneR (version 2.2)

maxlevels: Remove factors with too many levels

Description

Removes all columns of a data frame where a factor (or character string) has more than a maximum number of levels.

Usage

maxlevels(data, maxlevels = 20, na.omit = TRUE)

Arguments

data
data frame which contains the data.
maxlevels
number of maximum factor levels.
na.omit
logical value whether missing values should be treated as a level, defaults to omit missing values before counting.

Value

A data frame.

Details

Often categories that have very many levels are not useful in modelling OneR rules because they result in too many rules and tend to overfit. Examples are IDs or names.

Character strings are treated as factors although they keep their datatype. Numeric data is left untouched. If data contains unused factor levels (e.g. due to subsetting) these are ignored and a warning is given.

References

https://github.com/vonjd/OneR

See Also

OneR

Examples

Run this code
df <- data.frame(numeric = c(1:26), alphabet = letters)
str(df)
str(maxlevels(df))

Run the code above in your browser using DataLab