のサンプルデータを使用するTraMineR::seqetm
data(actcal)
actcal.seq <- seqdef(actcal,13:24,
labels=c("FullTime", "PartTime", "LowPartTime", "NoWork"))
あなたの例は、シーケンスを作成するためにprint.stslist
使用する出力のようですseqconc
このシーケンスを手動で作成します
actcal.seqconc <- seqconc(actcal.seq)
これはマトリックスです。したがって、この関数を適用して分割し-
、必要に応じて遷移状態と再結合することができます。これを行う関数は以下のとおりです。
transitions <- function(x, start = 'S') {
x <- unlist(strsplit(x, '-')
paste0(c(start, head(x, -1)), x, collapse = '-')
}
actcal.tseq <- as.matrix(apply( actcal.seqconc, 1, transitions))
状態間の遷移率が必要な場合は、seqtrate
seqtrate(actcal.seq)
[>] computing transition rates for states A/B/C/D ...
[-> A] [-> B] [-> C] [-> D]
[A ->] 0.986991870 0.005203252 0.001084011 0.006720867
[B ->] 0.009700665 0.970343681 0.007760532 0.012195122
[C ->] 0.005555556 0.014814815 0.934259259 0.045370370
[D ->] 0.008705580 0.006279435 0.014985015 0.970029970