SAS柱状/递归添加柱状细胞

时间:2018-05-04 17:19:54

标签: sas

我有一个关于特定列的递归/累积添加的问题,例如:点击示例

如何在SAS代码中编写此代码,该代码会生成与列相关的cumalitive添加。请帮帮我。

先谢谢你

Example

2 个答案:

答案 0 :(得分:1)

使用sum语句

 data have;
 input val;
 datalines;
 1
 2
 3
 ;
 data want;
  set have;
  newval+val;
  run;

答案 1 :(得分:0)

使用Retain功能。

您可以重复使用以下代码作为任何迭代/累积计算的基础。

 data have;
 input A;
 datalines;
 1
 2
 3
 ;
 run;
 data want;
  set have;
  Retain B;
  /* If condition to initialize B only once, _N_ is the current row number */
  if _N_= 1  then B=0;
  B=B+A;
/* put statement will print the table in the log */
  put _all_;
  run;

输出:

 A=1 B=1 _N_=1
 A=2 B=3 _N_=2
 A=3 B=6 _N_=3