如何使用SAS删除缺少字符值的行



我有一个这样的数据集:

id     type       time
70657  23E  Nov  4 2002 12:00AM
61651  12R  
11603  DQ2  
45819       Jul 23 2013 12:00AM
       732  Mar  4 2011 12:00AM
22810  231

我想做两件缺少价值观的事情。第一件事是如果变量time的值为",如何删除行。

所需输出1

id     type       time
70657  23E  Nov  4 2002 12:00AM 
45819       Jul 23 2013 12:00AM
       732  Mar  4 2011 12:00AM

第二件事是,如果有任何丢失的值,则删除行。

所需输出2

id     type       time
70657  23E  Nov  4 2002 12:00AM

SAS代码:

data character;
  length id type time $ 24;
  input id $ 1-5 type $ 8-10 time $ 13-31;
cards;
70657  23E  Nov  4 2002 12:00AM
61651  12R  
11603  DQ2  
45819       Jul 23 2013 12:00AM
       732  Mar  4 2011 12:00AM
22810  231
;
run;

我倾向于使用proc sql。类似于:

proc sql;
    create table newchar as
        select *
        from character
        where id is not null and type is not null and time is not null;
quit;

SAS备选方案。

DATA WANT;
    SET CHARACTER (WHERE = (TIME ~= "" AND TYPE ~= "" AND ID ~= ""));
RUN;

最新更新