我尝试(未成功)识别代表对应的个人 序列,使用 seqrep()。
我读了 Gabadinho, A. 和 G. Ritschard (2013),“寻找应用于分娩史的典型生活轨迹”,In Levy, R. & Widmer, E.(编辑)性别生活课程 - 个性化与标准化之间。适用于瑞士的欧洲方法,第 287-312 页。维也纳:LIT。
我能够使用 seqrplot() 可视化序列数据的代表性序列,并在 seqrep 中使用不同的参数(“频率”、“密度”...)。
我的目标是在相关的调查数据库中识别代表性序列对应的个人,以描述他们的(即社会)特征。
我无法执行此步骤。
感谢您的帮助。 此致, 雅克·安托万
如果我理解得好的话,你想要代表性序列的索引。由于代表序列取自数据集,因此它们属于数据集。我们可以通过搜索与代表距离为 0 的序列来识别它们。然而,一个代表性序列可能在同一个数据集中出现多次,即,与代表性的距离为 0 处可能存在多个序列。
以下是如何识别数据集中每个代表第一次出现的索引。
library(TraMineR)
data(biofam)
biofam.lab <- c("Parent", "Left", "Married", "Left+Marr",
"Child", "Left+Child", "Left+Marr+Child", "Divorced")
biofam.seq <- seqdef(biofam, 10:25, labels=biofam.lab)
## Computing the distance matrix
costs <- seqsubm(biofam.seq, method="TRATE")
biofam.om <- seqdist(biofam.seq, method="OM", sm=costs)
## Representative set using the neighborhood density criterion
biofam.rep <- seqrep(biofam.seq, diss=biofam.om, criterion="density")
rep.dist <- attr(biofam.rep,"Distances")
## retrieving assigned representative
rep.grp <- apply(rep.dist, 1, which.min)
## distance to its representative
dist.to.rep <- apply(rep.dist,1, min, na.rm=TRUE)
nrep = ncol(rep.dist)
idx.rep <- integer(length=nrep)
for (i in 1:nrep){
idx.rep[i] <- which(dist.to.rep[rep.grp==i] == 0)[1]
}
idx.rep
## [1] 15 8 1 41
第一个代表序列第一次出现对应情况 15,第二次出现对应情况 8,第三次出现对应情况 1,第四次出现对应情况 41。