加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

关于SAS累加语句

(2014-01-27 09:45:48)
标签:

杂谈

分类: SAS编程及应用

累加语句是一个可执行语句,语法如下:

variable+expression;

1)variable(变量):规定累加变量的名字。必须是数值类型:在编译阶段,PDV自动设置该累加变量的值为0,它的值从当前执行后一直保留在PDV,直到下次执行为止。

2)expession(表达式):一切有效的SAS表达式。

总结:variable+expression =( retain variable 0 ) + (sum ) 

1)retain 保证每一步骤执行时,会保留相应的值

2)等价于sum累加函数,则保证了累加语句遇到缺失值时,也不会出现缺失值的传导。

举例:分组累加求和,处理组内的最后一条记录。

data xinru_suhui_new_ts2;
set xinru_suhui_new_ts1;
by invest_number Sequence_no;
if first.invest_number then amt=Fund_amount;
else amt+Fund_amount;
result=round(sum(BEGINNING_BAL,amt,0),0.01);
new_Fund_amount=lag(result);
if last.invest_number then do;Fund_amount=-1*new_Fund_amount; output;end;
where   &start_date. le  Fund_date le &end_date.;
run;

 

 

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有