Sas: як використовувати proc sort з nodupkey
Ви можете використовувати PROC SORT у SAS із NODUPKEY , щоб сортувати спостереження в наборі даних за однією чи кількома змінними та видаляти будь-які дублікати.
У наведеному нижче прикладі показано, як використовувати цю процедуру з таким набором даних у SAS:
/*create dataset*/
data original_data;
input team $pointsrebounds;
datalines ;
At 12 8
At 12 8
At 12 8
At 23 9
At 20 12
At 14 7
At 14 7
B 20 2
B 20 5
B 29 4
B 14 7
B 20 2
B 20 2
B 20 5
;
run ;
/*view dataset*/
proc print data = original_data;
Приклад: використання PROC SORT із NODUPKEY у SAS
Припустімо, що ми просто використовуємо proc sort для сортування спостережень у наборі даних у порядку зростання (від найменшого до найбільшого) на основі значення в стовпці балів :
/*sort by points ascending*/
proc sort data =original_data out =data2;
by points;
run ;
/*view sorted dataset*/
proc print data =data2;
Зверніть увагу, що спостереження відсортовані в порядку зростання на основі значення в стовпці балів .
Однак кілька спостережень є дублікатами.
Щоб відсортувати спостереження на основі значень у стовпці точок і видалити всі дублікати, ми можемо додати nodupkey після оператора сортування proc :
/*sort by points ascending and remove duplicates*/
proc sort data =original_data out =data3 nodupkey ;
by points;
run ;
/*view sorted dataset*/
proc print data =data3;
Спостереження тепер відсортовано в порядку зростання на основі значення в стовпці балів , а всі повторювані спостереження видалено.
Зауважте, що ми також можемо додати аргумент за спаданням , щоб відсортувати спостереження на основі значення в стовпці балів у порядку спадання та видалити всі дублікати:
/*sort by points descending and removing duplicates*/
proc sort data =original_data out =data4 nodupkey ;
by descending points;
run ;
/*view sorted dataset*/
proc print data =data4;
Спостереження тепер відсортовано в порядку спадання на основі значення в стовпці балів , а всі повторювані спостереження видалено.
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові завдання в SAS:
Як використовувати Proc Append у SAS
Як використовувати Proc Tabulate у SAS
Як використовувати зіставлення Proc у SAS