DATA ステップによるSAS テーブルのマージ

 

このビデオでは、2つのテーブルをキー値にもとづいてマージする方法を説明します。

ご注意:

  • 00:13 - LIBSAS ライブラリが利用できない場合は、次の2つのテーブルをマージします。
    class1 テーブル: 名前、性別、年齢(名前の昇順でソート済み)
    class2 テーブル: 名前、身長、体重(未ソート)
    コードを実行して結果を確認する前のタイミングで、この場合に実行するコード例を掲載します(02:14 以降)。

ヒント:

  • 00:08 - 新しいバージョンの SAS Studio(Release 3.5 など)では、列の部分抽出もタスクで指定することができます。[出力データセット]の[取り込む変数]を[選択済み変数]に変更し、抽出列を指定することにより、以降の作業と同じ操作をコードを編集せずに行えます。SAS Studio の実行環境によっては、LIBSAS ライブラリが利用できない場合があります。その場合は、最初に次のコードを実行して2つのテーブルを WORK ライブラリに作成してください。
    proc sql noprint;
        create table work.class1 as select Name, Sex, Age
            from sashelp.class;
        create table work.class2 as select Name, Height, Weight
            from sashelp.classfit;
    quit;
  • 02:14 - LIBSAS が利用できない場合は、以下のコードで同様の効果を確認できます(身長と体重のデータを名前の昇順でソートします)。
    proc sort data=work.class2 out=work.class2sort;
       by Name;
    run;
  • 02:56 - LIBSAS が利用できない場合は、以下のコードを追加します。
    data work.class_HandW;
       merge work.class1 work.class2sort;
       by Name;
    run;