使用引用变量在SPSS中分配值

时间:2017-01-12 23:20:25

标签: loops if-statement spss

我在SPSS中实现以下功能时遇到一些困难。我试图找到一种方法来跟踪患有某种疾病的诊所的宠物。如果他们患有这种疾病,最初宠物被分配一定数量,但在随后的访问中这个数字是0,因为他们的疾病将被治愈!但是,我们想看看宠物是如何做的,所以我们希望能够添加一个实现以下功能的变量(过去的疾病)。

NAME    Visit DATE    Disease Code    
SPOT     1/1              1                 
SPOT     1/9              0                  
SPOT     1/11             0        
Bruno    12/1             1                  
Bruno    12/8             0                           

在这个例子中,Spot和Bruno参加了疾病1,但是当他们回来时他们没有患病1,因为治疗有效。但是,我们想要添加一个变量,仍然显示Spot和Bruno患有这种疾病。所以预期的结果是:

NAME    Visit DATE    Disease Code    Past Disease Code 
SPOT     1/1              1                  1
SPOT     1/9              0                  1
SPOT     1/11             0                  1
Bruno    12/1             1                  1
Bruno    12/8             0                  1

我试图通过使用IF循环来实现这一点,但我无法正确理解语法,因为Spot和Bruno作为一个案例多次输入,而不是单个案例。那有意义吗?从本质上讲,我希望能够说,因为SPOT和Bruno的变量"疾病代码",#34;过去的疾病代码"对于Spot和Bruno的每个条目,应该等于1。请注意,我们可以假设每只狗都有不同的名字。

1 个答案:

答案 0 :(得分:2)

查找AGGREGATE命令。

根据您的数据,这样的事情可能会起作用,但这应该足以作为命令如何工作的一个很好的例子。

AGGREGATE OUTFILE=* MODE=ADDVARIABLES /BREAK=name /PastDiseaseCode=MAX(DiseaseCode).