Sas で内部結合を実行する方法 (例あり)


次の基本構文を使用して、SAS で 2 つのデータセットとの内部結合を実行できます。

 proc sql ;
    create table final_table as
    select * from data1 as x join data2 as y
    on x.ID = y.ID;
quit ;

次の例は、この構文を実際に使用する方法を示しています。

関連: SAS で左結合を行う方法

例: SAS の内部結合

SAS に次の 2 つのデータセットがあると仮定します。

 /*create datasets*/
data data1;
    input team $points;
    datalines ;
Mavs 99
Spurs 93
Rockets 88
Thunder 91
Warriors 104
Cavs 93
Nets 90
Hawks 91
;
run ;

data data2;
    input team $rebounds;
    datalines ;
Mavs 21
Spurs 18
Warriors 27
Hawks 29
Knicks 40
Raptors 30
;
run ;

/*view datasets*/
proc print data =data1;
proc print data =data2; 

両方のデータセットが変数「 team」を共有していることに注意してください。

次の構文を使用して内部結合を実行し、両方のデータセットにチーム変数が含まれる行のみを含む新しいデータセットを作成します。

 /*perform inner join*/
proc sql ;
	create table final_table as
	select * from data1 as x join data2 as y
	on x.team = y.team;
quit ;

/*view results of inner join*/
proc print data =final_table; 

結果のデータセットには、両方のデータセットにチーム変数が含まれる行のみが含まれます。

前の 2 つのデータセットを参照すると、両方のデータセットに表示されるチームがマブス、スパーズ、ウォリアーズ、ホークスの 4 チームだけであることがわかります。

チーム変数で 2 つのデータセットを結合することを選択したため、これら 4 つのチームが最終的なデータセットにも表示されます。

追加リソース

次のチュートリアルでは、SAS で他の一般的なタスクを実行する方法について説明します。

SAS でデータを正規化する方法
SAS で文字列内の文字を置換する方法
SAS で欠損値をゼロに置き換える方法
SAS で重複を削除する方法

コメントを追加する

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