全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2696 6
2013-09-05
原表
YearItemP
2001a100
2002a130
2003a150
2004a170
2001b210
2002b220
2003b230
2004b210
2001c150
2002c200
2003c203
2004c300


如何新增一列
YearItemPgrowth
2001a100
2002a130

0.3
(=130/100-1)

2003a150

0.153846

2004a170

0.133333

2001b210
2002b220

0.047619

2003b230

0.045455

2004b210

-0.08696

2001c150
2002c200

0.333333

2003c203

0.015

2004c300

0.477833


二维码

扫码加我 拉你入群

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

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

全部回复
2013-9-5 14:09:25
复制代码
二维码

扫码加我 拉你入群

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

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

2013-9-5 14:53:27
data a;
input Year Item $ P;
cards;
2001        a        100
2002        a        130
2003        a        150
2004        a        170
2001        b        210
2002        b        220
2003        b        230
2004        b        210
2001        c        150
2002        c        200
2003        c        203
2004        c        300
;
run;
proc sort data =a ;
    by item;
run;

data b;
set a;
    by item;
    x=lag(p);
    if not first.item then y=round(p/x,0.000001)-1;
    drop x;
run;
既然写了,也贴一下吧,哈
二维码

扫码加我 拉你入群

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

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

2013-9-5 15:54:55
挺简单的,就是用lag函数
二维码

扫码加我 拉你入群

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

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

2013-9-5 20:52:51
caicaierfeng 发表于 2013-9-5 14:53
data a;
input Year Item $ P;
cards;
lag函数式做什么?
二维码

扫码加我 拉你入群

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

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

2013-9-6 09:21:23
妖帝东皇 发表于 2013-9-5 20:52
lag函数式做什么?
返回前一次执行的观测值,前一次在这个例子里就是前一行,即返回前一行P的值。
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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