美文网首页
SAS Function:LAG 和 DIF

SAS Function:LAG 和 DIF

作者: 野藤_ | 来源:发表于2020-05-11 22:23 被阅读0次

今天介绍SAS中的两个函数:LAG 和 DIF,首先看SAS官方文档的解释:LAG,Returns values from a queue,返回一个队列的值;DIF,Returns differences between an argument and its nth lag,返回当前值与队列值的差值。看定义,不太好理解,我们用代码解释一下。

LAG 函数 LAG函数结果

观察程序的结果,我们很容易理解,LAG(X)所取的是变量当前值的前一位。last_x第一行记录为缺失值,因为首行无前一位数值。我们继续看一下DIF函数。

DIF函数 DIF函数结果

DIF函数取的是变量当前值与前一个值的差值,可以这样理解DIF(X)=X - LAG(X)。看示例代码,很容里理解这两个Function的用法,下面我说一个LAG函数的注意点,看如下代码。

示例代码 示例代码结果

代码中,有个条件语句:只有当X>2时,才会执行lag_x = lag(x)。也就是说,只有当X=3,5,7的时候,LAG函数才会被调用,总共调用3次。我们看调用三次的lag_x的值,". 3 5", 这个结果不是直观的当前值的上一个值"1 . 2",LAG函数所调用的值的序列,只包括LAG(x)运行后的那个X值。

相关文章

网友评论

      本文标题:SAS Function:LAG 和 DIF

      本文链接:https://www.haomeiwen.com/subject/fnzpnhtx.html