Sas: как использовать union в proc sql


Вы можете использовать оператор UNION в инструкции PROC SQL в SAS для вертикального объединения двух наборов данных.

В следующем примере показано, как использовать оператор UNION на практике.

Пример: использование UNION в PROC SQL в SAS

Предположим, у нас есть следующий набор данных в SAS, содержащий информацию о различных баскетболистах:

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

Предположим, у нас есть еще один набор данных в SAS, который также содержит информацию о различных баскетболистах:

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

Мы можем использовать оператор UNION в инструкции SQL PROC , чтобы объединить эти два набора данных по вертикали и сохранить только уникальные строки:

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

Обратите внимание, что два набора данных были объединены вертикально, и сохраняются только уникальные строки.

Мы также можем использовать оператор UNION ALL в инструкции PROC SQL , чтобы объединить эти два набора данных по вертикали и сохранить все строки:

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

Обратите внимание, что два набора данных были объединены вертикально, и из обоих наборов данных сохранены все строки, даже те, которые являются дубликатами.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в SAS:

Как рассчитать баллы Z в SAS
Как использовать сводку процедур в SAS
Как рассчитать среднее, медиану и моду в SAS

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *