duplicates - SAS equivalent to R’s is.element() -
it’s first time i’ve opened sas today , i’m looking @ code colleague wrote.
so let’s have data (import
) duplicates occur want have unique number named vtnr.
first looks unique numbers:
data m.import; set m.import; vtnr; if first.vtnr=1 unique=1; run;
then creates table duplicated numbers:
data m.import_dup1; set m.import; unique^=1; run;
and table duplicates. here hardcoding numbers, example:
data m.import_dup2; set m.import; vtnr in (130001292951,130100975613,130107546425,130108026864,130131307133,130134696722,130136267001,130137413257,130137839451,130138291041); run;
i’m sure there must better way.
since i’m familiar r write like:
import_dup2 <- subset(import, is.element(import$vtnr, import_dup1$vtnr))
i guess there must $
sas?
to me looks direct translation of r code
import_dup2 <- subset(import, is.element(import$vtnr, import_dup1$vtnr))
would use sql code
proc sql; create table import_dup2 select * import vtnr in (select vtnr import_dup1) ; quit;
but if intent find observations in import have more 1 observation per vtnr value there no need first create other table.
data import_dup2 ; set import; vtnr ; if not (first.vtnr , last.vtnr); run;
Comments
Post a Comment