全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2263 6
2016-06-30
悬赏 30 个论坛币 已解决
   比如我有这么一组数据 B只有一个观测值,怎么把B这一行删除掉?
    X               Y
    A               1
    A               2
    B               3
    C               4
    C               5
    C               6

最佳答案

孤单的我们 查看完整内容

proc sql; create table want as select * from a group by x having count(x)>1; quit;
二维码

扫码加我 拉你入群

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

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

全部回复
2016-6-30 16:37:01
proc sql;
create table want as
select * from a group by x having count(x)>1;
quit;
二维码

扫码加我 拉你入群

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

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

2016-6-30 17:04:49
data b;
        input x $ y @@;
datalines;
A 1 A 2 B 3 C 4 C 5 C 6
;
RUN;
proc sql;
        create table b1 as
         select *, sum(y) as sum
         from b
         group by x;
quit;
data b2;
        set b1;
        if sum^=y;
        drop sum;
run;

二维码

扫码加我 拉你入群

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

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

2016-6-30 17:20:32
新手,不怎么简单,但是也提供了一种思路哈:
proc sort data=B nodupkey out=Bdistinct dupout=bdup;
        by x;
run;

proc sort data=bdup;
        by x;
run;
proc sort data=B;
        by x;
run;
data final;
        merge bdup(in=a) B;
        by x;
        if a;
run;
二维码

扫码加我 拉你入群

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

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

2016-6-30 17:22:28
孤单的我们 发表于 2016-6-30 17:15
proc sql;
create table want as
select * from a group by x having count(x)>1;
学习了
二维码

扫码加我 拉你入群

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

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

2016-6-30 17:27:08
孤单的我们 发表于 2016-6-30 17:15
proc sql;
create table want as
select * from a group by x having count(x)>1;
学习了
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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