全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1749 6
2010-06-30
各位好...我想請問一下以下的問題...

data tmp1;  
input y;
cards;
5
10
13
17
run;
data tmp2 ( drop=s f );
set  tmp1;
s=0; p=1; cal=0;
do _n_= _n_ to 2 by -1;
s=s+1;   f=0.3;  
p=(1-f)**s;
end;
cal=y*p;
run;
proc print data=tmp2;
run;

/*output 後是:::

Obs     y      p       cal
1      5    1.000     5.000
2     10    0.700    7.000
3     13    0.490    6.370
4     17    0.343    5.831
但我想cal 的計算方法是較特別..不知code是如何寫呢?以下就是我想output的結果..
Obs     y      p       cal
1      5    1.000     5.0
2     10    0.700    13.5        (10*1+5*0.7)
3     13    0.490    22.45     (13*1+10*0.700+5*0.490)
4     17    0.343    32.715    (17*1+13*0.700+10*0.490+5*0.343)
十分感謝!!
二维码

扫码加我 拉你入群

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

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

全部回复
2010-6-30 12:05:38
这个计算可有点麻烦了,我也想看看怎么做的。
二维码

扫码加我 拉你入群

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

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

2010-6-30 12:11:28
我有想過用return是否可行的...可惜不能吧..希望有高手可幫到我呢!
二维码

扫码加我 拉你入群

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

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

2010-6-30 15:06:07
我是1527,我回来了
-------------------华丽分割线-------------------------

data tmp1;  
input y;
cards;
5
10
13
17
run;
data tmp2 ;
set  tmp1;
retain cal 0;
p=0.7**(_n_-1);
if _n_=1 then cal=5;
else cal=0.7*cal+y;
run;
proc print data=tmp2;
run;
二维码

扫码加我 拉你入群

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

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

2010-6-30 15:19:32
嗯,楼上学习了.....
二维码

扫码加我 拉你入群

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

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

2010-6-30 15:55:36
真的很感謝你呢!!!!我再努力寫餘下的部份..希望你們不要介意我打擾你們呢
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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