Sas: como usar union no proc sql


Você pode usar o operador UNION na instrução PROC SQL no SAS para combinar dois conjuntos de dados verticalmente.

O exemplo a seguir mostra como usar o operador UNION na prática.

Exemplo: Usando UNION em PROC SQL em SAS

Suponha que temos o seguinte conjunto de dados no SAS que contém informações sobre vários jogadores de basquete:

 /*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;

E suponha que temos outro conjunto de dados no SAS que também contém informações sobre vários jogadores de basquete:

 /*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; 

Podemos usar o operador UNION na instrução SQL PROC para combinar esses dois conjuntos de dados verticalmente e manter apenas as linhas exclusivas:

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

Observe que os dois conjuntos de dados foram combinados verticalmente e apenas linhas exclusivas são retidas.

Também podemos usar o operador UNION ALL na instrução PROC SQL para combinar esses dois conjuntos de dados verticalmente e manter todas as linhas:

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

Observe que os dois conjuntos de dados foram combinados verticalmente e todas as linhas são retidas de ambos os conjuntos de dados, mesmo aquelas que são duplicadas.

Recursos adicionais

Os tutoriais a seguir explicam como executar outras tarefas comuns no SAS:

Como calcular pontuações Z no SAS
Como usar o resumo do procedimento no SAS
Como calcular média, mediana e moda no SAS

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *