Learn R Programming

depmixS4 (version 1.0-2)

depmix: Dependent Mixture Model Specifiction

Description

depmix creates an object of class depmix, a dependent mixture model, otherwise known as hidden Markov model. For a short description of the package see depmixS4.

Usage

depmix(response, data=NULL, nstates, transition=~1, family=gaussian(), 
		prior=~1, initdata=NULL, respstart=NULL, trstart=NULL, instart=NULL,
		ntimes=NULL,...)

Arguments

response
The response to be modeled; either a formula or a list of formulae in the multivariate case; this interfaces to the glm distributions. See 'Details'.
data
An optional data.frame to interpret the variables in the response and transition arguments.
nstates
The number of states of the model.
transition
A one-sided formula specifying the model for the transitions. See 'Details'.
family
A family argument for the response. This must be a list of family's if the response is multivariate.
prior
A one-sided formula specifying the density for the prior or initial state probabilities.
initdata
An optional data.frame to interpret the variables occuring in prior. The number of rows of this data.frame must be equal to the number of cases being modeled, length(ntimes). See 'Details'.
respstart
Starting values for the parameters of the response models.
trstart
Starting values for the parameters of the transition models.
instart
Starting values for the parameters of the prior or initial state probability model.
ntimes
A vector specifying the lengths of individual, i.e. independent, time series. If not specified, the responses are assumed to form a single time series, i.e. ntimes=nrow(data). If the data argument has an attribute ntimes, t
...
Not used currently.

Value

  • depmix returns an object of class depmix which has the following slots:
  • responseA list of a list of response models; the first index runs over states; the second index runs over the independent responses in case a multivariate response is provided.
  • transitionA list of transInit models, ie multinomial logistic models with length the number of states.
  • priorA multinomial logistic model for the initial state probabilities.
  • dens,trDens,initSee depmix-class help for details. For internal use.
  • stationaryLogical indicating whether the transitions are time-dependent or not; for internal use.
  • ntimesA vector containing the lengths of independent time series; if data is provided, sum(ntimes) must be equal to nrow(data).
  • nstatesThe number of states of the model.
  • nrespThe number of independent responses.
  • nparsThe total number of parameters of the model. Note: this is not the degrees of freedom because there are redundancies in the parameters, in particular in the multinomial models for the transitions and prior probabilities.

Details

The function depmix creates an S4 object of class depmix, which needs to be fitted using fit to optimize the parameters. The response model(s) are by default created by call(s) to GLMresponse using the formula and the family arguments, the latter specifying the error distribution. See GLMresponse for possible values of the family argument for glm-type responses (ie a subset of the glm family options, and the multinomial). Alternative response distributions are specified by using the makeDepmix function. Its help page has examples of specifying a model with a multivariate normal response, as well as an example of adding a user-defined response model, in this case for the ex-gauss distribution. If response is a list of formulae, the response's are assumed to be independent conditional on the latent state. The transitions are modeled as a multinomial logistic model for each state. Hence, the transition matrix can be modeled using time-varying covariates. The prior density is also modeled as a multinomial logistic. Both of these models are created by calls to transInit. Starting values for the initial, transition, and response models may be provided by their respective arguments. NB: note that the starting values for the initial and transition models as well as of the multinomial logit response models are interpreted as probabilities, and internally converted to multinomial logit parameters. The order in which parameters must be provided can be easily studied by using the setpars and getpars functions. Linear constraints on parameters can be provided as argument to the fit function. The print function prints the formulae for the response, transition and prior models along with their parameter values.

References

Ingmar Visser and Maarten Speekenbrink (2010). depmixS4: An R Package for Hidden Markov Models. Journal of Statistical Software, 36(7), p. 1-21.

Lawrence R. Rabiner (1989). A tutorial on hidden Markov models and selected applications in speech recognition. Proceedings of IEEE, 77-2, p. 267-295.

See Also

fit, transInit, GLMresponse, depmix-methods for accessor functions to depmix objects. For full control see the makeDepmix help page and its example section for the possibility to add user-defined response distributions.

Examples

Run this code
# create a 2 state model with one continuous and one binary response
data(speed)
mod <- depmix(list(rt~1,corr~1),data=speed,nstates=2,family=list(gaussian(),multinomial()))
# print the model, formulae and parameter values
mod

Run the code above in your browser using DataLab