nor1mix (version 1.2-3)

dnorMix: Normal Mixture Density

Description

Evaluate the density function of the normal mixture specified as norMix object.

Usage

dnorMix (x, obj,        log = FALSE)

dnorMixL(obj, x = NULL, log = FALSE, xlim = NULL, n = 511) dpnorMix(x, obj, lower.tail = TRUE)

Arguments

obj

an object of class norMix.

x

numeric vector with abscissa values where to evaluate the density (and probability, for dpnorMix()). For dnorMixL() by default, when NULL, it is constructed from n (and xlim if that is specified).

log

logical indicating log-density values should be returned.

xlim

range of abscissa values, used if x == NULL. By default, xlim is taken as mean plus/minus 3 standard deviations of the normal mixture.

n

number of abscissa values to generate if x is not specified.

lower.tail

logical; if TRUE (default), probabilities are \(P[X \le x]\), otherwise, \(P[X > x]\).

Value

dnorMix(x) returns the numeric vector of density values \(f(x)\), logged if log is TRUE.

dnorMixL() returns a list with components

x

the abscissa values.

y

the density values \(f(x)\) as for dnorMix().

dpnorMix() returns a list with components

d

the density values \(f(x)\) as for dnorMix().

p

the probability values \(F(x)\) as for pnorMix().

See Also

rnorMix for random number generation, and norMix for the construction and further methods, particularly plot.norMix which makes use dnorMix.

Examples

Run this code
# NOT RUN {
 ff <- dnorMixL(MW.nm7)
 str(ff)
 plot(ff, type = "h", ylim = c(0,1)) # rather use plot(ff, ...)

 x <- seq(-4,5, length=501)
 dp <- dpnorMix(x, MW.nm7)
 lines(x, dp$d, col = "tomato", lwd=3)
 lines(x, dp$p, col = 3, lwd=2)# does not fit y-wise
 stopifnot(all.equal(dp$d, dnorMix(x, MW.nm7), tolerance=1e-12),
           all.equal(dp$p, pnorMix(x, MW.nm7), tolerance=1e-12))
# }

Run the code above in your browser using DataLab