wle.normal.mixture
is a preliminary version; it is used to robust estimate the location, scale and proportion parameters via Weighted Likelihood, when the sample is iid from a normal mixture univariate distribution with known m
number of components.
wle.normal.mixture(x, m, boot=5, group, num.sol=1, raf="HD", smooth=0.003, tol=10^(-15), equal=10^(-2), max.iter=1000, all.comp=TRUE, min.size=0.02, min.weights=0.3, boot.start=10, group.start=3, tol.start=10^(-6), equal.start=10^(-3), smooth.start=0.003, max.iter.start=500, max.iter.boot=25, verbose=FALSE)
wle.normal.mixture.start(x, m, boot=5, group, raf="HD", smooth=0.003, tol=10^(-15), equal=10^(-2), min.size=0.02, min.weights=0.3, boot.start=20, group.start=3, max.iter.start=500, max.iter.boot=20, verbose=FALSE)
raf="HD"
: Hellinger Distance RAF,
raf="NED"
: Negative Exponential Disparity RAF,
raf="SCHI2"
: Symmetric Chi-Squared Disparity RAF.
tol
).tol.start
).TRUE
warnings are printed.wle.normal.mixture
returns an object of class
"wle.normal.mixture"
.Only print method is implemented for this class.The objects returned by wle.normal.mixture
are:max.iter
iteration are reached.wle.normal
we try to find the biggest
components, then we discard each observation with weight greater than
min.weights
. The wle.normal
is run on the remain
observations if the ratio between the number of observations and the
original sample size is greater than min.size
. The convergence of
the algorithm is determined by the difference between two
iterations. This stopping rule could have some problems, as soon as
possible it will replace with the one proposed in Markatou (2000)
pag. 485 (5).
Markatou, M., (2000) Mixture models, robustness and the weighted likelihood methodology, Biometrics, 56, 483-486.
Markatou, M., (2001) A closer look at the weighted likelihood in the context of mixtures, Probability and Statistical Models with Applications, Charalambides, C.A., Koutras, M.V. and Balakrishnan, N. (eds.), Chapman and Hall/CRC, 447-467.
library(wle)
set.seed(1234)
x <- c(rnorm(150,0,1),rnorm(50,15,2))
wle.normal.mixture(x,m=2,group=50,group.start=2,boot=5,num.sol=3)
wle.normal(x,group=2,boot=10,num.sol=3)
Run the code above in your browser using DataLab