楼主: ding5183823
2373 6

SAS怎么删除只有一个观测值的变量 [推广有奖]

  • 0关注
  • 0粉丝

已卖:1份资源

硕士生

12%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0
学术水平
1 点
热心指数
0 点
信用等级
0 点
经验
369 点
帖子
29
精华
0
在线时间
207 小时
注册时间
2014-5-10
最后登录
2018-7-19

楼主
ding5183823 发表于 2016-6-30 16:37:00 |AI写论文
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;
关键词:观测值 SAS 求助! sas 求助

沙发
孤单的我们 发表于 2016-6-30 16:37:01
proc sql;
create table want as
select * from a group by x having count(x)>1;
quit;
已有 1 人评分论坛币 收起 理由
admin_kefu + 10 热心帮助其他会员

总评分: 论坛币 + 10   查看全部评分

藤椅
麦弥 发表于 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;

已有 1 人评分论坛币 学术水平 热心指数 收起 理由
admin_kefu + 25 + 2 + 2 热心帮助其他会员

总评分: 论坛币 + 25  学术水平 + 2  热心指数 + 2   查看全部评分

板凳
Arithmetic09 发表于 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;
已有 1 人评分论坛币 学术水平 热心指数 收起 理由
admin_kefu + 25 + 2 + 2 热心帮助其他会员

总评分: 论坛币 + 25  学术水平 + 2  热心指数 + 2   查看全部评分

报纸
Arithmetic09 发表于 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;
学习了

7
Michael1941 发表于 2016-7-3 23:04:57
data want;
set have;
by x;
if first.x and last.x then delete;
run;

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-31 03:27