我现在使用 TraMineR 一段时间了,我有一个关于更改序列时间粒度的问题。目前,我的序列已按月排列,但出于多种原因,我想将其更改为年。我想使用每年最长的咒语作为该特定年份的状态。换句话说,如果某人同居了 4 个月,然后结婚并在 2000 年的另外 8 个月保持婚姻状态,我想将该人编码为 2000 年结婚。我想知道是否有一个简单的方法使用 TraMineR 来完成此操作。
提前致谢,
汤姆
最佳答案
TraMineReextras
包中的 seqcapsularity
函数将长度为 tspan
的每个连续子序列聚合为单个状态。在 CRAN 上的稳定版本中,提出了两种聚合方法:“first”
或 “last”
,分别用该周期中的第一个和最后一个状态替换序列。期间。
您正在寻找的选项,即将周期替换为最常见的状态,目前正在 TraMineReextras
的开发版本中进行测试,可从 R-Forge 获得。 。参数是 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)
关于time - TraMineR 中从月度数据到年度数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23564893/