CATX SAS

【SAS】CATX関数は区切り文字を設定し、変数を結合することができる。

投稿日:2021年12月28日 更新日:

今回はCATX関数について解説します。


/* , */
data data1;
  Id1=1111; Id2=1111; Id3=1111;
    output;
  Id1=2222; Id2=2222; Id3=2222;
    output;
  Id1=3333; Id2=3333; Id3=3333;
    output;
run;

data data2; set data1;
  Id4 = catx(",", Id1, Id2, Id3) ;
run;

  • catxにより、変数をカンマで結合することができる。

/* , 文字列 */
data data1;
  Id1="1111"; Id2="1111"; Id3="1111";
    output;
  Id1="2222"; Id2="2222"; Id3="2222";
    output;
  Id1="3333"; Id2="3333"; Id3="3333";
    output;
run;

data data2; set data1;
  Id4 = catx(",", Id1, Id2, Id3) ;
run;

  • catxにより、変数をカンマで結合することができる。

/* , Id2 . */
data data1;
  Id1=1111; Id2=1111; Id3=1111;
    output;
  Id1=2222; Id2=.; Id3=2222;
    output;
  Id1=3333; Id2=3333; Id3=3333;
    output;
run;

data data2; set data1;
  Id4 = catx(",", Id1, Id2, Id3) ;
run;

  • catxにより、変数をカンマで結合することができる。
  • nullを結合しようとすると「.」で扱われる。

/* , Id3 . */
data data1;
  Id1=1111; Id2=1111; Id3=1111;
    output;
  Id1=2222; Id2=2222; Id3=.;
    output;
  Id1=3333; Id2=3333; Id3=3333;
    output;
run;

data data2; set data1;
  Id4 = catx(",", Id1, Id2, Id3) ;
run;

  • catxにより、変数をカンマで結合することができる。
  • nullを結合しようとすると「.」で扱われる。

/* | */
data data1;
  Id1=1111; Id2=1111; Id3=1111;
    output;
  Id1=2222; Id2=2222; Id3=2222;
    output;
  Id1=3333; Id2=3333; Id3=3333;
    output;
run;

data data2; set data1;
  Id4 = catx("|", Id1, Id2, Id3) ;
run;

  • catxにより、変数を「|」で結合することができる。

/* | , */
data data1;
  Id1=1111; Id2=1111; Id3=1111;
    output;
  Id1=2222; Id2=2222; Id3=2222;
    output;
  Id1=3333; Id2=3333; Id3=3333;
    output;
run;

data data2; set data1;
  Id4 = catx("|",",", Id1, Id2, Id3) ;
run;

  • catxにより、変数を「|」で結合することができる。
  • 1番目の引数「|」で区切り、それ以外の「,」「Id1」「Id2」「Id3」を結合している。

-CATX, SAS

執筆者:


comment

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

関連記事

【SAS】%SYSFUNC関数はデータステップの外でも関数を使えるようにする。その2(%LETステートメント中の挙動)

今回は%SYSFUNC関数について、%LETステートメント中の挙動に着目して解説します。 /* substr */ %let a = substr(123456789, 2, 4); data dat …

【SAS】SQLにおける複数テーブルの結合 その2【INNER JOIN】

今回も複数テーブルの結合について解説します。 前回の記事、【SAS】SQLにおける複数テーブルの結合 その1【UNION ALL】 | ビジネスイッチ (how-to-business.com)の続き …

【SAS】SETステートメントに複数データセットを設定すると縦結合できる

今回はSETについて解説します。 /* 1~7 */ data data1; Id1=1111; Char1=”AAAA”; output; Id1=2222; Char1=”BBBB”; outpu …

【SAS】SAS日時値からSAS日付値に変換する方法【DATEPART】【DATETIME】【DATE】

今回はDATETIMEでSAS日時値を取得した後、SAS日付値に変換する方法について解説していきます。 (つまり、DATETIMEの値からDATEの値に変換する) (DATETIME:【SAS】DAT …

【SAS】NODUPKEYはソート時に重複を削除する

今回はNODUPKEYについて解説します。 data data1; id=”A”; chiku=”SHINJUKU1″; 数字=1; output; id=”A”; chiku=”SHINJUKU2″ …