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 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