R: EM algorithm for Reliability Mixture Models (RMM) with right...

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 n real positive lifetime (possibly censored) durations. If `d` is not `NULL` then a vector of random censoring times `c` occurred, so that x= min(x,c) and d = I(x <= c).
`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 `NULL`, then `lambda` is set to `rep(1/k,k)`.
`rate` | Initial value of component exponential rates, all set to 1 if `NULL`.
`k` | Number of components of the mixture.
`complete` | Nature of complete data involved within the EM machinery, can be "tdz" for `(t,d,z)` (the default), or "xz" for `(x,z)` (see Bordes L. and Chauveau D. (2016) reference below).
`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 `maxit` iterations (see `epsilon` above).
`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 n x k matrix of posterior probabilities for observation, after convergence of the algorithm.
`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. http://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

[Package mixtools version 1.2.0 Index]