【问题标题】:SAS data manipulation for 2 table based on one column id基于一列 id 的 2 个表的 SAS 数据操作
【发布时间】:2014-11-14 03:24:10
【问题描述】:

我有 2 个表如下:

表 1

data table1;
   input id $ value;
   datalines;
   A 1
   A 2
   B 1
   B 2
   C 1
   D 1
   ;

表 2

data table2;
   input id $ value;
   datalines;
   A 1
   B 2
   C 1
   D 1
   E 1
   ;

如您所见,表 1 的唯一 ID 是 A、B、C、D。 我想删除 table2 中没有出现在 table1 中的观察结果。

因此,table2 的最后一次观察应删除为 E 而不是 {A, B, C, D}

期望的输出:

   A 1
   B 2
   C 1
   D 1

【问题讨论】:

    标签: sas


    【解决方案1】:

    您可以使用proc sql

    proc sql;
        delete from table2
             where not exists (select 1 from table1 where table1.id = table2.id);
    

    【讨论】:

    • 如果我想创建一个新的表名 Table2_1 怎么办?
    • @user 。 . .我不明白你的第二条评论。一般来说,您应该将问题作为问题而不是在 cmets 中提问。
    猜你喜欢
    • 1970-01-01
    • 2013-10-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多