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 で重複を削除する方法