楼主: lizhewenbei
665 2

请教大家,如何把框架填好? [推广有奖]

  • 15关注
  • 5粉丝

副教授

36%

还不是VIP/贵宾

-

威望
0
论坛币
309 个
通用积分
11.4770
学术水平
4 点
热心指数
13 点
信用等级
5 点
经验
9699 点
帖子
609
精华
0
在线时间
496 小时
注册时间
2008-2-6
最后登录
2024-1-9

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
请教大家,如何把框架填好?

原始数据
stkcdyearvariable
119991
120042
120072
120096
120111
220031
220072
220113
320031
420022
420031
420041
420051
420073
420081
420091
420101
420111
420129
420131
420145
520141



目标的样式:
stkcdyearvariable
119991
12000
12001
12002
12003
120042
12005
12006
120072
12008
120096
12010
120111
12012
12013
12014
12015

二维码

扫码加我 拉你入群

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

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

关键词:Variable stkcd year ABLE 原始数据 如何 2011 2014

沙发
l1i2n3i4n5g 在职认证  发表于 2017-1-4 17:25:00 |只看作者 |坛友微信交流群
data test;
input stkcd year variable;
cards;
1 1999 1
1 2004 2
1 2007 2
1 2009 6
1 2011 1
2 2003 1
2 2007 2
2 2011 3
3 2003 1
4 2002 2
4 2003 1
4 2004 1
4 2005 1
4 2007 3
4 2008 1
4 2009 1
4 2010 1
4 2011 1
4 2012 9
4 2013 1
4 2014 5
5 2014 1
;
run;

data test1;
set test;
by stkcd year;
output;
if first.stkcd then do;
        do year=1999 to 2015;
                variable=.;
                output;
        end;
end;
run;

proc sort data=test1 out=test2;
by stkcd year descending variable;
run;

data test3;
set test2;
by stkcd year;
if first.year;
run;

使用道具

藤椅
wwang111 发表于 2017-1-4 20:18:27 |只看作者 |坛友微信交流群
data test;
input stkcd        year variable;
cards;
1        1999        1
1        2004        2
1        2007        2
1        2009        6
1        2011        1
2        2003        1
2        2007        2
2        2011        3
3        2003        1
4        2002        2
4        2003        1
4        2004        1
4        2005        1
4        2007        3
4        2008        1
4        2009        1
4        2010        1
4        2011        1
4        2012        9
4        2013        1
4        2014        5
5        2014        1
;

data allyear;
do year=1999 to 2015;
  output;
end;
run;

proc sql;
create table wanted as
select a.stkcd, a.year, variable
from
(select * from
(select distinct stkcd from test), (select distinct year from allyear)) a
left join test b
on a.stkcd=b.stkcd and a.year=b.year;
quit;

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-26 13:10