expRMM_EM {mixtools} | R Documentation |
EM algorithm for Reliability Mixture Models (RMM) with right Censoring
Description
Parametric EM algorithm for univariate finite mixture of exponentials distributions with randomly right censored data.
Usage
expRMM_EM(x, d=NULL, lambda = NULL, rate = NULL, k = 2,
complete = "tdz", epsilon = 1e-08, maxit = 1000, verb = FALSE)
Arguments
x |
A vector of |
d |
The vector of censoring indication, where 1 means observed lifetime data, and 0 means censored lifetime data. |
lambda |
Initial value of mixing proportions.
If |
rate |
Initial value of component exponential rates,
all set to 1 if |
k |
Number of components of the mixture. |
complete |
Nature of complete data involved within the EM machinery,
can be "tdz" for |
epsilon |
Tolerance limit for declaring algorithm convergence based on the change between two consecutive iterations. |
maxit |
The maximum number of iterations allowed, convergence
may be declared before |
verb |
If TRUE, print updates for every iteration of the algorithm as it runs |
Value
expRMM_EM
returns a list of class "mixEM" with the following items:
x |
The input data. |
d |
The input censoring indicator. |
lambda |
The estimates for the mixing proportions. |
rate |
The estimates for the component rates. |
loglik |
The log-likelihood value at convergence of the algorithm. |
posterior |
An |
all.loglik |
The sequence of log-likelihoods over iterations. |
all.lambda |
The sequence of mixing proportions over iterations. |
all.rate |
The sequence of component rates over iterations. |
ft |
A character vector giving the name of the function. |
Author(s)
Didier Chauveau
References
Bordes, L., and Chauveau, D. (2016), Stochastic EM algorithms for parametric and semiparametric mixture models for right-censored lifetime data, Computational Statistics, Volume 31, Issue 4, pages 1513-1538. https://link.springer.com/article/10.1007/s00180-016-0661-7
See Also
Related functions:
plotexpRMM
,
summary.mixEM
.
Other models and algorithms for censored lifetime data:
weibullRMM_SEM
,
spRMM_SEM
.
Examples
n <- 300 # sample size
m <- 2 # number of mixture components
lambda <- c(1/3,1-1/3); rate <- c(1,1/10) # mixture parameters
set.seed(1234)
x <- rexpmix(n, lambda, rate) # iid ~ exponential mixture
cs <- runif(n,0,max(x)) # Censoring (uniform) and incomplete data
t <- apply(cbind(x,cs),1,min) # observed or censored data
d <- 1*(x <= cs) # censoring indicator
###### EM for RMM, exponential lifetimes
l0 <- rep(1/m,m); r0 <- c(1, 0.5) # "arbitrary" initial values
a <- expRMM_EM(t, d, lambda = l0, rate = r0, k = m)
summary(a) # EM estimates etc
plotexpRMM(a, lwd=2) # default plot of EM sequences
plot(a, which=2) # or equivalently, S3 method for "mixEM" object