指定某些队列需要计算几代人最频繁的子序列

Specifying need for certain cohorts to calculate most frequent subsequences for generations

我有一个分类变量"generations"。我想使用 TraMineR 计算每一代的最频繁子序列,但我不明白如何指定我需要某个队列。我已经尝试了我所知道的所有可能的解决方案,但到目前为止没有任何效果。这是我无法指定的代码:

GGS.seqe <- seqecreate(GGS.seq, tevent = "state")
fsubseq <- seqefsub(GGS.seqe, pMinSupport=0.01)
fsubseq[1:50]

假设你有一个因子队列,下面是你如何得到一个列表,其中包含按队列排列的最频繁的子序列集:

ncohort <- length(levels(cohort))  # number of cohorts
mostfreq <- vector("list",ncohort) # list of length ncohort

GGS.seqe <- seqecreate(GGS.seq, tevent = "state")
for (i in 1:ncohort) {
  mostfreq[i] <- seqefsub(GGS.seqe[cohort==levels(cohort)[i]], pMinSupport=0.01)
}

然后您可以使用 mostfreq[i] 访问列表的每个元素,例如,对于第二个群组 mostfreq[2]