全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
3425 3
2010-06-06
请教高手SAS按照分类求连乘该怎样解决,比如下面这个结果:
code、day、rate都是已知的,想按照code对rate进行连乘,产生result变量
code       day          rate             result
1             1               1.2               1.2
1             2               1.4               1.2*1.4
1             3               1.3               1.2*1.4*1.3
2             1               1.5               1.5
2             2               1.7               1.5*1.7            
2             3               1.8               1.5*1.7*1.8
我用的是retain命令,但是用by没法按code分类,就一直连乘下去,也就是code=2 and day=1时,result=1.2*1.4*1.3*1.5
data new;
set above; by code;
retain result 1;
result=result*rate;
run;
该怎样解决,请高手帮帮忙啊!谢谢~
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2010-6-6 17:23:23
顶起来,让用过的朋友来帮忙
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2010-6-6 19:50:24
data above;
input code       day          rate    ;
cards;
1             1               1.2              
1             2               1.4              
1             3               1.3              
2             1               1.5               
2             2               1.7                          
2             3               1.8              
;run;

data new;
set above; by code notsorted;
retain result 1;
if first.code then result=rate ;else
result=result*rate ;
proc print;
run;
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2010-6-6 21:46:50
哈哈,刚试了一下可以了,楼上的好强!万分感谢!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群