Description Usage Arguments Value References Examples

Viterbi algorithm to decode the latent states in hidden semi-Markov models with covariates

1 2 3 4 |

`y` |
the observed series to be decoded |

`ntimes` |
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=length(y) |

`M` |
number of latent states |

`trunc` |
a vector specifying the truncation at the maximum number of dwelling time in each state. |

`workparm` |
working parameters. The first part is the logit of parameter p for each log-series dwell time distribution or the log of parameter theta for each shifted-poisson dwell time distribution. If dt_dist is "nonparametric", then the first part is empty. The next part is the generalized logit of prior probabilities (except for the 1st state),the logit of each nonzero structural zero proportions, the log of each state-dependent poisson means, and the generalized logit of the transition probability matrix(except 1st column and the diagonal elements). |

`dt_dist` |
dwell time distribution, can only be "log", "shiftedpoisson" or "nonparametric". Default to "nonparametric". |

`zero_init` |
a vector containing structural zero proportions in each state, e.g. set zero_init[i] to be 0 if the i-th state is a regular poisson, and otherwise 1. |

`prior_x` |
matrix of covariates for generalized logit of prior probabilites (excluding the 1st probability). Default to NULL. |

`tpm_x` |
matrix of covariates for transition probability matrix (excluding the 1st column). Default to NULL. |

`emit_x` |
matrix of covariates for the log poisson means. Default to NULL. |

`zeroinfl_x` |
matrix of covariates for the nonzero structural zero proportions. Default to NULL. |

`dt_x` |
if dt_dist is "nonparametric", then dt_x is the matrix of nonparametric state durataion probabilities. Otherwise, dt_x is matrix of covariates for the dwell time distribution parameters in log-series or shifted-poisson distributions.Default to NULL. |

`plot` |
whether a plot should be returned |

`xlim` |
vector specifying the minimum and maximum on the x-axis in the plot. Default to NULL. |

`ylim` |
vector specifying the minimum and maximum on the y-axis in the plot. Default to NULL. |

`...` |
further arguments to be passed to the plot() function |

decoded series of latent states

Walter Zucchini, Iain L. MacDonald, Roland Langrock. Hidden Markov Models for Time Series: An Introduction Using R, Second Edition. Chapman & Hall/CRC

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | ```
## Not run:
data(CAT)
y <- CAT$activity
x <- data.matrix(CAT$night)
prior_init <- c(0.5,0.3,0.2)
dt_init <- c(0.9,0.6,0.3)
emit_init <- c(10,50,100)
zero_init <- c(0.5,0,0) #assuming only the 1st state has structural zero's
tpm_init <- matrix(c(0,0.3,0.7,0.4,0,0.6,0.5,0.5,0),3,3,byrow=TRUE)
trunc <- c(10,7,4)
fit2 <- hsmmfit(y,rep(1440,3),3,trunc,prior_init,"log",dt_init,tpm_init,
emit_init,zero_init,emit_x=x,zeroinfl_x=x,hessian=FALSE,
method="Nelder-Mead", control=list(maxit=500,trace=1))
decode <- hsmmviterbi2(y,rep(1440,3),3,trunc,fit2$working_parameters,
dt_dist="log", zero_init=c(1,0,0),
emit_x=x,zeroinfl_x=x, plot=TRUE, xlab="time", ylab="count",
xlim=c(0,360),ylim=c(0,200))
## End(Not run)
``` |

Embedding an R snippet on your website

Add the following code to your website.

For more information on customizing the embed code, read Embedding Snippets.