全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2355 9
2013-07-12
悬赏 100 个论坛币 已解决

三个变量num type$ total

具体数据为下表  

1321321978010  m            500000

1321321978010  m            500000

1321321978010  m            500000

1321321978010  per        100000

1321321978010  per        100000

1321321978010  per        100000

1321321978010  per        100000

1304041972120  per        300000

1304041972120  per        300000

1304041972120  per        300000

1304041972120  per        300000

1304211977071  per        400000

1304211977071  per        400000

1304211977071  per        400000

想法对typeper 的数据进行操作

如果typeper的数据的num typem的数据的num一致,则保留

此条typerper的数据,否则将typeper的数据删除。

Typem的数据全部保留。 以上的例子仅为很小一部分,处理的数据会有很多的

M和很多的PER.


以上例子的想象结果应为

1321321978010  m            500000

1321321978010  m            500000

1321321978010  m            500000

1321321978010  per        100000

1321321978010  per        100000

1321321978010  per        100000

1321321978010  per        100000


SAS 新手,请大家帮忙 先谢谢了。 大家辛苦


最佳答案

pobel 查看完整内容

如果type只有m和per的话: proc sql; create table b as select distinct * from a where num in (select distinct num from a where type="m"); quit;
二维码

扫码加我 拉你入群

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

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

全部回复
2013-7-12 15:04:44
如果type只有m和per的话:
proc sql;
   create table b as
     select distinct * from a
         where num in (select distinct num from a where type="m");
quit;
二维码

扫码加我 拉你入群

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

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

2013-7-12 15:08:30
在线等 多谢啦
二维码

扫码加我 拉你入群

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

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

2013-7-12 15:24:51
SAS不会,不过可以使用Excel预处理!
二维码

扫码加我 拉你入群

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

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

2013-7-12 15:42:21
思路上先subset数据,把type = m 和type =per的数据分开,然后SQL或者其它方式处理两个dataset, per中仅保留在num在m中出现的obs, 再set回去就可以了
二维码

扫码加我 拉你入群

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

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

2013-7-12 16:06:53
pobel 发表于 2013-7-12 15:47
如果type只有m和per的话:
proc sql;
   create table b as
技术太高超了,真的是十分的感谢,这么快就解决了我纠结了2个小时的问题。。佩服佩服。刚刚开始接触SAS,所以非常需要论坛的各位高手指导。再次感谢你。
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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