Normal kernel density estimate for nonparametric EM output
Takes an object of class npEM
and returns an object of class
density
giving the kernel density estimate for the selected
component and, if applicable, the selected block.
## S3 method for class 'npEM' density(x, u=NULL, component=1, block=1, scale=FALSE, ...)
x |
An object of class |
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 |
block |
Block of repeated measures. Only applicable in repeated measures
case, for which |
scale |
Logical: If TRUE, multiply the density values by the
corresponding mixing proportions found in |
... |
Additional arguments; not used by this method. |
The bandwidth is taken to be the same as that used to produce the npEM
object, which is given by x$bandwidth
.
## Look at histogram of Old Faithful waiting times data(faithful) Minutes <- faithful$waiting hist(Minutes, freq=FALSE) ## Superimpose equal-variance normal mixture fit: set.seed(100) nm <- normalmixEM(Minutes, mu=c(50,80), sigma=5, arbvar=FALSE, fast=TRUE) x <- seq(min(Minutes), max(Minutes), len=200) for (j in 1:2) lines(x, nm$lambda[j]*dnorm(x, mean=nm$mu[j], sd=nm$sigma), lwd=3, lty=2) ## Superimpose several semiparametric fits with different bandwidths: bw <- c(1, 3, 5) for (i in 1:3) { sp <- spEMsymloc(Minutes, c(50,80), bw=bw[i], eps=1e-3) for (j in 1:2) lines(density(sp, component=j, scale=TRUE), col=1+i, lwd=2) } legend("topleft", legend=paste("Bandwidth =",bw), fill=2:4)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.