在SPSS中减去不同行中的值

时间:2013-04-28 10:34:34

标签: spss

我在SPSS中是全新的,现在正在尝试编写语法来操作我的数据集。

我现在有一个如下所示的数据集:

V1 V2

1 2007/01/23

2 2007/02/25

。 。 。

第一行“V1”是行号,第二行“V2”是日期。

我想找到每两个后续行的日期“V2”之间的差异,并为结果创建新的第三列数据。

但是,我不知道如何对两个不同的行中的数据进行减法。

2 个答案:

答案 0 :(得分:3)

查找滞后函数。它使您可以访问以前的行。如果需要计算正向值,请查看SHIFT VALUES命令。

答案 1 :(得分:1)

我认为您对两个日期之间的天数感兴趣。 “ctime.days”函数将减法的值转换为天数。

COMPUTE ddiff = ctime.days(v2 - LAG(v2)).
EXECUTE.

另一个解决方案是使用“datediff”函数: 该函数的一般语法是:

datediff(date1,date2,unit)

在您的情况下,您将使用以下语法:

COMPUTE ddiff = datediff(v2,LAG(v2),"days").
EXECUTE.

第二种解决方案更灵活,因为您可以选择其他输出单位,例如“年”,“季度”,“月”,“周”等。