Sas: jak używać union w proc sql


Możesz użyć operatora UNION w instrukcji PROC SQL w SAS-ie, aby połączyć w pionie dwa zbiory danych.

Poniższy przykład pokazuje, jak w praktyce używać operatora UNION .

Przykład: użycie UNION w PROC SQL w SAS-ie

Załóżmy, że mamy następujący zbiór danych w SAS-ie, który zawiera informacje o różnych koszykarzach:

 /*create first dataset*/
data data1;
    input team $points;
    datalines ;
AT 12
At 14
At 15
At 18
At 20
At 22
;
run ;

/*view first dataset*/
proc print data =data1;

Załóżmy, że mamy inny zbiór danych w SAS-ie, który zawiera również informacje o różnych koszykarzach:

 /*create second dataset*/
data data2;
    input team $points;
    datalines ;
AT 12
At 14
B23
B25
B29
B 30
;
run ;

/*view second dataset*/
proc print data =data2; 

Możemy użyć operatora UNION w instrukcji SQL PROC, aby połączyć te dwa zbiory danych w pionie i zachować tylko unikalne wiersze:

 /*combine tables vertically and only keep unique rows*/
proc sql ;
   title 'data1 UNION data2';
   select * from data1
   union
   select * from data2;
quit ; 

Należy zauważyć, że oba zbiory danych zostały połączone pionowo i zachowane są tylko unikalne wiersze.

Możemy także użyć operatora UNION ALL w instrukcji PROC SQL, aby połączyć te dwa zbiory danych w pionie i zachować wszystkie wiersze:

 /*combine tables vertically and keep all rows*/
proc sql ;
   title 'data1 UNION ALL data2';
   select * from data1
   union all
   select * from data2;
quit ; 

Należy zauważyć, że oba zbiory danych zostały połączone pionowo i wszystkie wiersze z obu zbiorów danych, nawet te, które są duplikatami, zostały zachowane.

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w SAS-ie:

Jak obliczyć wyniki Z w SAS
Jak korzystać ze podsumowania procedur w SAS-ie
Jak obliczyć średnią, medianę i tryb w SAS

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *