全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2379 8
2012-05-23
比如我有个序列,应该是1,2,3,4,5.。。
但是可能中间缺了3,5.那么我想要3,5的值表示出来变成.。
例如
1 20
2 20
4 30
6 90
我想数据集变成
1 20
2 20
3 .
4 30
5 .
6 90

那要怎么办呢???
跪求解!!谢谢啊!!
二维码

扫码加我 拉你入群

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

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

全部回复
2012-5-23 17:02:52
data a;
input a b;
cards;
1 20
2 20
4 30
6 90
;
run;

data b(drop=i);
do i=1 to 6;
a=i;
b=.;
output;
end;
run;

proc sql;
create table c as
select b.a as ca
      ,case
      when a.b ne . then a.b
      else b.b end as cb
      from b left jion a
      on b.a=a.a
      order by b.a;
      quit;
二维码

扫码加我 拉你入群

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

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

2012-5-23 17:22:29
bluebluestar 发表于 2012-5-23 17:02
data a;
input a b;
cards;
嗯~~~excellent,我就没想到这样做!!
二维码

扫码加我 拉你入群

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

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

2012-5-24 09:51:09
data a;
input a b;
cards;
1 20
2 20
4 30
6 90
;
run;

data work.b;
        do a = 1 to 6;
                outpaut ;
        end;
run;

data work.c;
        merge work.a work.b;
        by a;
run;
二维码

扫码加我 拉你入群

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

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

2012-5-24 09:52:12
需要先按照a排好序
二维码

扫码加我 拉你入群

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

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

2012-5-25 00:14:23
chendonghui1987 发表于 2012-5-24 09:51
data a;
input a b;
cards;
此处正当用merge by,sql略显累赘
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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