Sas: nodupkey で proc sort を使用する方法


SAS でNODUPKEY を指定してPROC SORT を使用すると、データセット内の観測値を 1 つ以上の変数で並べ替え、重複を削除できます。

次の例は、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;

例: SAS で NODUPKEY を使用した PROC SORT の使用

単純にproc sortを使用して、 points列の値に基づいてデータセット内の観測値を昇順 (最小値から最大値) に並べ替えるとします。

 /*sort by points ascending*/
proc sort data =original_data out =data2;
    by points;
run ;

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

観測値はポイント列の値に基づいて昇順で並べ替えられることに注意してください。

ただし、いくつかの観測値は重複しています。

Points列の値に基づいて観測値を並べ替え、重複をすべて削除するには、 proc sortステートメントの後にnodupkeyを追加します。

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

観測値はポイント列の値に基づいて昇順に並べ替えられ、重複する観測値は削除されました。

また、 descending引数を追加して、 points列の値に基づいて観測値を降順で並べ替え、すべての重複を削除することもできることに注意してください。

 /*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 で他の一般的なタスクを実行する方法について説明します。

SAS で Proc Append を使用する方法
SAS で Proc Tabulate を使用する方法
SAS で Proc 照合を使用する方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です