3

我现在使用 TraMineR 有一段时间了,我有一个关于更改序列时间粒度的问题。目前,我的序列按月对齐,但出于多种原因,我想将其更改为年。我想使用每年最长的咒语作为该特定年份的状态。换句话说,如果有人同居 4 个月,然后在 2000 年结婚并在另外 8 个月保持婚姻,我想将该人编码为 2000 年结婚。我想知道是否有简单的方法用 TraMineR 做到这一点。

提前致谢,

汤姆

4

1 回答 1

4

包中的seqgranularity函数TraMineRextras将每个连续的长度子序列聚合tspan为一个状态。在其在 CRAN 上的稳定版本中,提出了两种聚合方法:"first"或者"last"将周期内的序列分别替换为周期中的第一个和最后一个状态。

您正在寻找的选项,即用最频繁的状态替换句点,目前正在R-ForgeTraMineRextras的开发版本中进行测试。论据是method="mostfreq"

以下是我们将月度数据汇总为年度数据的示例:

library(TraMineRextras)
data(mvad)
mvad.seq <- seqdef(mvad, 17:86)
mvad.seq2 <- seqgranularity(mvad.seq, tspan=12, method="mostfreq")
par(mfrow=c(2,1))
seqiplot(mvad.seq, withlegend=F)
seqiplot(mvad.seq2, withlegend=F)
于 2014-05-10T15:26:18.987 回答