我想知道我是否有办法在SPSS中进行完全匹配比较。目前,如果一个变量是sysmis:
,使用以下命令将返回系统缺失(null)compute var1_comparison = * Some logic here.
compute var1_check = var1 = var1_comparison.
结果看起来像这样(夸大代表空值):
ID var1 var1_comparison var1_check
1 3 3 1
2 4 3 0
3 - 2 -
4 1 1 1
5 - - -
我想要的是:
ID var1 var1_comparison var1_check
1 3 3 1
2 4 3 0
3 - 2 0
4 1 1 1
5 - - 1
这是否可以使用简单的SPSS语法?我也愿意使用Python扩展,但我并不熟悉它。
答案 0 :(得分:2)
这是一种略有不同的方法,使用临时临时变量(以哈希(#)为前缀):
recode var1 var1_comparison (sysmis=-99) (else=copy) into #v1 #v2.
compute Check=(#v1 = #v2).
答案 1 :(得分:1)
这是为了重新创建你的例子:
data list list/ID var1 var1_comparison.
begin data
1, 3, 3
2 , 4, 3
3, , 2
4, 1, 1
5, ,
end data.
现在你必须单独处理两个值都缺失的情况,然后在所有其他情况下完成计算:
do if missing(var1) or missing(var1_comparison).
compute var1_check=(missing(var1) and missing(var1_comparison)).
else.
compute var1_check = (var1 = var1_comparison).
end if.