Learn R Programming

mixtools (version 2.0.0)

density.spEM: Normal kernel density estimate for semiparametric EM output

Description

Takes an object of class spEM and returns an object of class density giving the kernel density estimate.

Usage

# S3 method for spEM
density(x, u=NULL, component=1, block=1, scale=FALSE, ...)

Value

density.spEM returns a list of type "density". See

density for details. In particular, the output of

density.spEM may be used directly by functions such as

plot or lines.

Arguments

x

An object of class npEM such as the output of the npEM or spEMsymloc functions.

u

Vector of points at which the density is to be evaluated

component

Mixture component number; should be an integer from 1 to the number of columns of x$posteriors.

block

Block of repeated measures. Only applicable in repeated measures case, for which x$blockid exists; should be an integer from 1 to max(x$blockid).

scale

Logical: If TRUE, multiply the density values by the corresponding mixing proportions found in x$lambdahat

...

Additional arguments; not used by this method.

Details

The bandwidth is taken to be the same as that used to produce the npEM object, which is given by x$bandwidth.

See Also

spEM, spEMsymloc, plot.spEM

Examples

Run this code
set.seed(100)
mu <- matrix(c(0, 15), 2, 3)
sigma <- matrix(c(1, 5), 2, 3)
x <- rmvnormmix(300, lambda = c(.4,.6), mu = mu, sigma = sigma)

d <- spEM(x, mu0 = 2, blockid = rep(1,3), constbw = TRUE) 
plot(d, xlim=c(-10, 40), ylim = c(0, .16), xlab = "", breaks = 30, 
     cex.lab=1.5, cex.axis=1.5) # plot.spEM calls density.spEM here

Run the code above in your browser using DataLab