我对TraMineR还不熟悉;因此,对于大多数人来说,我的问题可能很简单。我正在用我的数据绘制一些序列图,并希望看到使用调查权重和名义权重的结果。我能够将数据导入R中,并按原样运行序列图,但无法使用权重来运行。我已经包含了我如何创建状态序列对象(非常天真)的语法,以及两个序列图示例。如何编写语法来使用权重?谢谢
数据文件: DISDATAC;调查权重: WTSURVY;标称: NORMWEIGHTS
DISDATAC<-read.spss("/Users/tac0432/Desktop/DISDATAC.sav",to.data.frame=TRUE,use.value.labels=TRUE,)
DISDATAC.shortlab <- c("2yr", "4yr", "Gov","Bus","UeL")
DISDATAC.lab <- c("2year college or Other School System", " 4year college or Medical Institution", " Government","Business/Industry","Unemployed or Not in the labor force")
DISDATAC.seq <- seqdef(DISDATAC, 09:12, states = DISDATAC.shortlab, labels = DISDATAC.lab)
DISDATAC.seq[1:20, 1:4] ; print(DISDATAC.seq[1:20, ], format = "SPS"); alphabet(DISDATAC.seq)
stlab(DISDATAC.seq)
Sequence Plot Syntax examples
seqIplot(DISDATAW.seq, border = NA, group = DISDATAW$NMRMEMG, sortv = "from.start")
seqIplot(DISDATAW.seq, border = NA, group = DISDATAW$GENDER:DISDATAW$NMRMEMG, sortv = "from.start")发布于 2014-09-05 15:51:48
如果没有要处理的数据示例,很难确定,但是看起来您需要在weights函数中提供一列seqdef。如果这样做,默认情况下,TraMineR绘图函数将说明权重。
如果您遵循seqIplot的“帮助”,您可以访问讨论权重的帮助页。以下是seqIplot帮助中的关键部分:
如果在创建
seqdata时指定了权重,则seqtab将返回加权频率,因为默认选项是weighted=TRUE。参见下面的例子,seqtab和plot.stslist.freq手册页获得可选参数的完整列表,Müller等人(2008年)获得序列频率图的描述。
因此,我们需要查看函数seqdef,它创建了用于绘图的seqdata对象。seqdef的帮助描述了weights参数:
weights可选的包含权重的数值向量,可通过绘图和适用时的统计函数来计算。
该帮助还提供了一个如何在seqdef中指定权重的示例。
https://stackoverflow.com/questions/25687889
复制相似问题