stableMode: Estimate mode (most frequent value)

View source: R/stableMode.R

stableModeR Documentation

Estimate mode (most frequent value)

Description

Estimate mode, ie most frequent value. In case of continuous numeric data, the most frequent values may not be the most frequently repeated exact term. This function offers various approches to estimate the mode of a numeric vector. Besides, it can also be used to identify the most frequentexact term (in this case also from character vectors).

Usage

stableMode(
  x,
  method = "density",
  finiteOnly = TRUE,
  bandw = NULL,
  rangeSign = 1:6,
  silent = FALSE,
  callFrom = NULL,
  debug = FALSE
)

Arguments

x

(numeric, or character if 'method='mode') data to find/estimate most frequent value

method

(character) There are 3 options : BBmisc, binning and density (default). If "binning" the function will search context dependent, ie like most frequent class of histogram. Using "binning" mode the search will be refined if either 80 percent of values in single class or >50 percent in single class.

finiteOnly

(logical) suppress non-finite values; allows avoiding NULL as result in presence of some Inf values; NA will be ignored in any case

bandw

(integer) only used when method="binning" or method="density" : defines the number of points to look for density or number of classes used; very "critical" parameter, may change results in strong way. Note: with method="binning": At higher values for "bandw" you will finally loose advantage of histLike-type search of mode !

rangeSign

(integer) only used when method="binning": range of numbers used as number of significant values

silent

(logical) suppress messages

callFrom

(character) allows easier tracking of messages produced

debug

(logical) additional messages for debugging

Details

The argument method allows to choose among (so far) 4 different methods available. If "density" is chosen, the most dense region of sqrt(n) values will be chosen; if "binning", the data will be binned (like in histograms) via rounding to a user-defined number of significant values ("rangeSign"). If method is set to "BBmisc", the function computeMode() from package BBmisc will be used. If "mode" is chosen, the first most frequently occuring (exact) value will be returned, if "allModes", all ties will be returned. This last mode also works with character input.

Value

This function returns a numeric vector with value of mode, the name of the value indicates it's position

See Also

computeMode() in package BBmisc

Examples

set.seed(2012); dat <- round(c(rnorm(50), runif(100)),3)
stableMode(dat)

wrMisc documentation built on Nov. 17, 2023, 5:09 p.m.