比较组内各行之间的值
Comparing values between lines within a group
我想创建一个列来表示调查受访者是否已将位置从第 6 波更改为第 7 波。我不关心之前的波(尽管它们存在于数据中)。
所以我想要的逻辑是:如果来自第 6 波的电子邮件 = 来自第 7 波的电子邮件和来自 6 的位置 <> 来自 7 的位置然后 1。所以我只关心同时出现在第 6 波和第 7 波中的受访者。
这是我想要的输出示例:(我希望 1 同时出现在第 6 波和第 7 波上,表示这两个波的变化)。
我不确定如何在 SPSS 中合理地编写它。任何提示将不胜感激。谢谢!
有很多方法可以做到这一点,所以这里有一个假设每个 wave
X Email_A
组合只出现一次的方法应该有效:
sort cases by Email_A wave.
compute changeLocation=
(Email_A=lag(Email_A) and wave=7 and lag(wave)=6 and location<>lag(location)).
此时您在 wave=7
的每个相关行中都有 1。现在要将其添加到 wave=6
行,还有一些方法,但这里有一个有趣的方法:
sort cases by Email_A wave (d).
if Email_A=lag(Email_A) and wave=6 and lag(changeLocation)=1 changeLocation=1.
我想创建一个列来表示调查受访者是否已将位置从第 6 波更改为第 7 波。我不关心之前的波(尽管它们存在于数据中)。 所以我想要的逻辑是:如果来自第 6 波的电子邮件 = 来自第 7 波的电子邮件和来自 6 的位置 <> 来自 7 的位置然后 1。所以我只关心同时出现在第 6 波和第 7 波中的受访者。
这是我想要的输出示例:(我希望 1 同时出现在第 6 波和第 7 波上,表示这两个波的变化)。
我不确定如何在 SPSS 中合理地编写它。任何提示将不胜感激。谢谢!
有很多方法可以做到这一点,所以这里有一个假设每个 wave
X Email_A
组合只出现一次的方法应该有效:
sort cases by Email_A wave.
compute changeLocation=
(Email_A=lag(Email_A) and wave=7 and lag(wave)=6 and location<>lag(location)).
此时您在 wave=7
的每个相关行中都有 1。现在要将其添加到 wave=6
行,还有一些方法,但这里有一个有趣的方法:
sort cases by Email_A wave (d).
if Email_A=lag(Email_A) and wave=6 and lag(changeLocation)=1 changeLocation=1.