Function to calculate the mode of a unimodal distribution which is
specified by the root of the density function name and the
corresponding parameters.
Usage
distMode(densFn, param = NULL, ...)
Arguments
densFn
Character. The name of the density function for which
the mode is required.
param
Numeric. A vector giving the parameter values for the
distribution specified by densFn. If no param values
are specified, then the default parameter values of each
distribution are used instead.
...
Passes arguments to optimize. In
particular, the parameters of the distribution.
Details
The name of the unimodal density function must be supplied as the
characters of the root for that density (e.g. norm,
ghyp). The particular unimodal distribution being considered is
specified by the value of the argument param, or for base R
distributions by specification in the ... arguments.
Value
The mode is found by a numerical optimization using
optimize.
normRange <- distCalcRange("norm", tol = 10^(-7), mean = 4, sd = 1)
curve(dnorm(x, mean = 4, sd = 1), normRange[1], normRange[2])
abline(v = distMode("norm", mean = 4, sd = 1), col = "blue")
Results
R version 3.3.1 (2016-06-21) -- "Bug in Your Hair"
Copyright (C) 2016 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)
R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.
R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.
Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.
> library(DistributionUtils)
Loading required package: RUnit
> png(filename="/home/ddbj/snapshot/RGM3/R_CC/result/DistributionUtils/distMode.Rd_%03d_medium.png", width=480, height=480)
> ### Name: distMode
> ### Title: Mode of a Unimodal Distribution
> ### Aliases: distMode
> ### Keywords: distribution univar
>
> ### ** Examples
>
> normRange <- distCalcRange("norm", tol = 10^(-7), mean = 4, sd = 1)
> curve(dnorm(x, mean = 4, sd = 1), normRange[1], normRange[2])
> abline(v = distMode("norm", mean = 4, sd = 1), col = "blue")
>
>
>
>
>
> dev.off()
null device
1
>