全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2955 5
2018-11-12
悬赏 50 个论坛币 已解决
我有如下表格,按照顾客号码cust_id 和日期period排过序了。原始表格不包括y,怎么用sas编程来计算y?最后y的数值应当像我下面表格列出的一样。

y的要求如下:对于一个cust_id的第一个period,y=x1(表格中y的第一个数1000是这么来的);对于这个cust_id的其他period,y=前期的x2乘以当期的x3(表格中y的第二个数是6,因为x2前期数值=3,x3当期数值=2)。估计需要使用retain或者lag,我不清楚。

cust_id

period

x1

x2

x3

y

1

1

1000

3

3

1,000

1

2

1000

5

2

6

1

3

1000

6

4

20

1

4

1000

7

6

36

1

5

1000

3

2

14

2

1

2000

6

5

2,000

2

2

2000

4

6

36

2

3

2000

3

1

4


最佳答案

小熊包 查看完整内容

data a; input cust_id period x1 x2 x3; cards; 1 1 1000 3 3 1 2 1000 5 2 1 3 1000 6 4 1 4 1000 7 6 1 5 1000 3 2 2 1 2000 6 5 2 2 2000 4 6 2 3 2000 3 1 ; run; proc sort data=a; by cust_id period; run; data b; set a; by cust_id period; x2_=lag(x2); if first.cust_id then do; y=x1; x2_=.; end; else y=x3*x2_; run;
二维码

扫码加我 拉你入群

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

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

全部回复
2018-11-12 12:54:09
data a;
input cust_id period x1 x2 x3;
cards;
1 1 1000 3 3
1 2 1000 5 2
1 3 1000 6 4
1 4 1000 7 6
1 5 1000 3 2
2 1 2000 6 5
2 2 2000 4 6
2 3 2000 3 1
;
run;

proc sort data=a;
by cust_id period;
run;

data b;
set a;
by cust_id period;
x2_=lag(x2);
if first.cust_id then do; y=x1; x2_=.; end;
else y=x3*x2_;
run;
二维码

扫码加我 拉你入群

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

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

2018-11-12 14:21:20
小熊包 发表于 2018-11-12 12:54
data a;
input cust_id period x1 x2 x3;
cards;
我又开了一贴,(正在审核中),还请也给看看![问答] 悬赏求助:如何用SAS编程来计算一列数(和前面的行以及自身相关) (审核中) [推广有奖]。

y的要求如下:对于一个cust_id的第一个period,y=x1;对于这个cust_id的其他period,y=前期的y + 前期的x2 + 当期的x3。估计需要使用retain或者lag,我不清楚。
二维码

扫码加我 拉你入群

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

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

2018-11-12 14:33:27
ertyuj 发表于 2018-11-12 14:21
我又开了一贴,(正在审核中),还请也给看看![问答] 悬赏求助:如何用SAS编程来计算一列数(和前面的行 ...
这是新帖的网址:https://bbs.pinggu.org/forum.php?mod=viewthread&tid=6746616&page=1&extra=#pid54710800
二维码

扫码加我 拉你入群

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

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

2018-11-12 14:34:51
小熊包 发表于 2018-11-12 12:54
data a;
input cust_id period x1 x2 x3;
cards;
这是新帖的网址:https://bbs.pinggu.org/forum.php?mod=viewthread&tid=6746616&page=1&extra=#pid54710800
二维码

扫码加我 拉你入群

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

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

2018-11-12 15:09:58
ertyuj 发表于 2018-11-12 14:34
这是新帖的网址:https://bbs.pinggu.org/forum.php?mod=viewthread&tid=6746616&page=1&extra=#pid547108 ...
已回复,请查看。
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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