LAG功能问题(SAS)

时间:2015-10-16 08:36:43

标签: sas

我正在使用SAS Base V9.4

我每天都有每个客户的余额,我想知道他们是否会从一天到另一天增加或减少他们的余额。所以我写了下面的代码但是我收到了以下错误。

  

“ERROR 72-185:LAG函数调用有太多参数。”

var arrayForTesting = [2, 5, 18];
var result = arrayForTesting.some(element => {
    return element > 5;
});

可能是什么问题?

1 个答案:

答案 0 :(得分:3)

滞后的深度是函数名称的一部分,而不是参数。所以你想要LAG1(BALANCE)而不是LAG(BALANCE,1)LAG1()可以缩短为LAG()。如果要处理数据BY客户,还要添加BY语句。这将创建FIRST.LAST.变量。如果您只想要差异而不是实际的先前值,您还应该查看DIF()系列函数。

data want ;
  set have ;
  by cust_id;
  if dif(balance) > 0 and not first.cust_id then flag='FLAG=1' ;