全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2588 3
2009-03-23

有以下数据集:

id  gid txt
1  1  a
2  1  b
3  1  c
4  2  e
5  2  f
6  3  g

怎样才能把TXT根据GID 合并成如下数据集:
id gid  txt
1   1   abc
2   2   ef
3   3   g
请问哪位大虾知道? 帮忙解决下这个问题!
二维码

扫码加我 拉你入群

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

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

全部回复
2009-3-23 11:19:00

按照你给的例子,可以用下面的程序。 需要注意一点,txt 后面$10.很重要。如果你将来得到的txt的长度超过10,那么你就必须事先调整这个数字。

data T;
 input id  gid txt $10.;
 datalines;
1  1  a
2  1  b
3  1  c
4  2  e
5  2  f
6  3  g
;
run;

proc sort data = T;
 by gid;
run;

data T;
 set T;
 if _n_=1 then
  p=txt;
 retain p;
 if gid=lag(gid) then
  p = cats(p,txt);
 else
     p=txt;
 drop id;
run;

data t_sub;
 set T;
 by gid;
 last=last.gid;
 if last=1;
 drop txt;
run;

data t_sub;
 set t_sub;
 drop last;
 id=_n_;
 rename p=txt;
run;


quit;

二维码

扫码加我 拉你入群

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

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

2009-3-23 11:27:00

well done,LS的

二维码

扫码加我 拉你入群

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

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

2009-3-23 20:53:00
多谢STEVEN10. 我得好好学学了。
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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