宽到长,重复测量次数不等SPSS

  • 本文关键字:SPSS 测量 reshape spss
  • 更新时间 :
  • 英文 :


我想将数据集从宽格式重建为长格式,以便在混合模型中进行分析。一些变量具有0M、3M、6M、9M、12M,每3个月重复测量一次12M随访,有些人每月进行一次12次测量。当我使用VARTOCASES时,如何填写子命令索引?如果我记录(5(它不适合每个月重复测量,依此类推,如果我注册(12(它将不适合每3个月测量一次。你有什么建议?

VARSTOCASES
/ make WEIGHT from WEIGHT0M WEIGHT3M WEIGHT6M WEIGHT9M WEIGHT12M
/ make HB from HB1 to HB12
/ index = TIME (5)
/ keep = ID.

首先,您必须注意两个变量组之间的不平衡-在它们平衡之前,varstocases根本无法工作(不能有两个变量数量不同的/make ... from命令(。平衡它们的一种方法可以是创建虚拟变量来填补空白。

代码前的几个注意事项:

  1. WEIGHT0M WEIGHT3M WEIGHT6M ...这样的变量名不能作为很好地使用TO关键字,所以在下面的语法中,我创建了一个全新的系列;导入";旧变量的值
  2. 看起来你实际上有13个数据点,而不是12个——因为变量WEIGHT0M表示未在HB1 to HB12系列-所以我们也需要为此创建一个假人
compute WEIGHTM0=WEIGHT0M.
vector WEIGHTM(12).
do repeat /nw=WEIGHTM3 WEIGHTM6 WEIGHTM9 WEIGHTM12 /orig=WEIGHT3M WEIGHT6M WEIGHT9M WEIGHT12M.
compute nw=orig.
end repeat.
compute HB0=$sysmis.

VARSTOCASES
/ make WEIGHT from WEIGHTM0 to WEIGHTM12
/ make HB from HB0 to HB12
/ index = TIME (13).

这将导致WEIGHT列中时间点1,2,4,5等的空值。或者,您可以选择将值放在那里,例如,您可以将点0的值复制到点1、2,将点3的值复制到点4、5等。您可以通过扩展上面的循环来完成,也可以在varstocases:之后使用以下内容

sort cases by ID index.
if $casenum>1 and ID=lag(ID) and missing(WEIGHT) WEIGHT=lag(WEIGHT).

相关内容

  • 没有找到相关文章

最新更新