在SPSS中根据具有相同“id”变量的不同案例创建一个新变量

问题描述 投票:0回答:1

我有一个数据集,在某些情况下,包含来自多个时间点“score1”和“score2”的特定分数的数据。因此,我想创建一个新变量“prospective”=1,它用预期数据标识案例(相同的“id”以及可用的“score1”和“score2”数据)。因此,它应该看起来像这样:

因此,如果“id”相同但在不同时间点之一缺少分数,则应返回“prospective”=0。我尝试过使用 LAG 函数,如下所示:

DO IF (id = LAG(id)) AND ((Score1 GE 0) OR (Score2 GE 0)) AND ((LAG(Score1) GE 0) OR (LAG(Score2) GE 0)).
Compute LAG(Prospective = 1) AND Prospective =1.
END IF.
Execute.

但是,我收到一条错误消息,指出在 COMPUTE 命令中的目标变量之后未按预期找到等号。

如果您能帮助我,我将非常感激。 谢谢!

spss
1个回答
0
投票

以下代码将计算每个 ID 的每行中的有效值,然后汇总 ID 的两行中的计数。然后,具有两个有效值的 ID 将被标记为预期 = 1(其他 - 0):

compute validsRow=2-nmiss(score1,score2).
aggregate out=* mode=addvariables overwrite=yes /break=id /validsID=sum(validsRow).
compute prospective=validsID=2.
exe.
© www.soinside.com 2019 - 2024. All rights reserved.