我正在使用R软件包TraMineR来计算和分析事件状态序列。我的字母表由7个州组成。
我使用seqistatd
命令来计算每个州对我感兴趣的一些子群体所花费的平均时间(例如,具有不同教育水平的女性)。
但是,我想添加有关标准错误的信息或每个州花费的平均时间的标准偏差。是否可以在seqistatd
行命令中执行此操作,或者我必须以某种方式计算我自己的估算?
谢谢。
答案 0 :(得分:2)
不,函数seqistatd
确实为每个单独的序列返回每个状态的时间。但是,通过具有apply
函数的组计算平均时间和方差很容易。我将使用biofam
提供的TraMineR
数据作为示例进行说明。
library(TraMineR)
data(biofam)
bf.seq <- seqdef(biofam[,10:25])
bf.ldist <- seqistatd(bf.seq)
sel <- (biofam$sex == "man")
## Mean and variance of time in each state for men
(meant <- apply(bf.ldist[sel,], 2, mean, na.rm=TRUE))
(vart <- apply(bf.ldist[sel,], 2, var, na.rm=TRUE))
## and for women
(meant <- apply(bf.ldist[!sel,], 2, mean, na.rm=TRUE))
(vart <- apply(bf.ldist[!sel,], 2, var, na.rm=TRUE))