Ajay, On a similar note, there are two other packages as well for similar models: hmm.discnp for hidden Markov models of univariate discrete non-parametric distributions and depmix for hidden Markov models for multivariate data, ie gaussians, multinomials etc, and combinations of these hth, ingmar
> > Ajay--you seem to have gotten your question answered regarding putting your > dataframe in the correct format, etc. If you haven't already, you might > want to check out the MSM package for multi-state Markov and hidden Markov > models in continuous time. It's been quite useful for some of my work > regarding estimating Markov chains/matrices and is actively maintained. > > > Thanks, > Charles > > <<< you wrote >>> > > Folks, > > I am holding a dataset where firms are observed for a fixed (and > small) set of years. The data is in "long" format - one record for one > firm for one point in time. A state variable is observed (a factor). > > I wish to make a markov transition matrix about the time-series > evolution of that state variable. The code below does this. But it's > hardcoded to the specific years that I observe. How might one > generalise this and make a general function which does this? :-) > > -ans. > > > > set.seed(1001) > > # Raw data in long format -- > raw <- data.frame(name=c("f1","f1","f1","f1","f2","f2","f2","f2"), > year=c(83, 84, 85, 86, 83, 84, 85, 86), > state=sample(1:3, 8, replace=TRUE) > ) > # Shift to wide format -- > fixedup <- reshape(raw, timevar="year", idvar="name", v.names="state", > direction="wide") > # Now tediously build up records for an intermediate data structure > try <- rbind( > data.frame(prev=fixedup$state.83, new=fixedup$state.84), > data.frame(prev=fixedup$state.84, new=fixedup$state.85), > data.frame(prev=fixedup$state.85, new=fixedup$state.86) > ) > # This is a bad method because it is hardcoded to the specific values > # of "year". > markov <- table(destination$prev.state, destination$new.state) > > -- > Ajay Shah http://www.mayin.org/ajayshah > > [EMAIL PROTECTED] > http://ajayshahblog.blogspot.com > <*(:-? - wizard who doesn't know the answer. > > > [[alternative HTML version deleted]] > > ______________________________________________ > R-help@stat.math.ethz.ch mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html > ______________________________________________ R-help@stat.math.ethz.ch mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html