ATTRIB PUT SAS

【SAS】ATTRIBによる形式変換とPUTによる形式変換の違いを解説

投稿日:

今回は、ATTRIBによる形式変換とPUTによる形式変換の違いを解説します。

結論:ATTRIBは入力項目が数値型、文字列型どちらにも対応できるが、

   PUTは入力項目が数値型の時しか使えない。

(参考:【SAS】ATTRIBの使い方を解説 | ビジネスイッチ (how-to-business.com)

(参考:【SAS】PUTはSAS日付値をフォーマットを変換して表示する【DATE】【YYMMDD】【DATETIME】【TIME】【TOD】 | ビジネスイッチ (how-to-business.com)


/* attrib_1 */
data data1;
 id1="22229"; id2="22229"; id3="22229";
   output;
 id1="22229"; id2="22229"; id3="22229";
   output;
 id1="22229"; id2="22229"; id3="22229";
   output;
run;


data data2; set data1;
  attrib id4 format=date9. ;
  id4 = id1;
run;

  • attrib-formatは”22229″⇒10NOV2020に形式変換する。

/* attrib_2 */
data data1;
 id1=22229; id2=22229; id3=22229;
   output;
 id1=22229; id2=22229; id3=22229;
   output;
 id1=22229; id2=22229; id3=22229;
   output;
run;


data data2; set data1;
  attrib id4 format=date9. ;
  id4 = id1;
run;
  • attrib-formatは22229⇒10NOV2020に形式変換する。

/* put_1 */
data data1;
 id1="22229"; id2="22229"; id3="22229";
   output;
 id1="22229"; id2="22229"; id3="22229";
   output;
 id1="22229"; id2="22229"; id3="22229";
   output;
run;


data data2; set data1;
  id4 = put(id1, date9.);
run;
  • putは”22229″を型変換できない。

/* put_2 */
data data1;
 id1=22229; id2=22229; id3=22229;
   output;
 id1=22229; id2=22229; id3=22229;
   output;
 id1=22229; id2=22229; id3=22229;
   output;
run;


data data2; set data1;
  id4 = put(id1, date9.);
run;
  • putは22229⇒10NOV2020に形式変換する。

-ATTRIB, PUT, SAS

執筆者:


comment

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

関連記事

【SAS】COALESCEはNULLを数字に置き換える

今回はCOALESCEについて解説します。 /*coalesce 正常形*/ data data1; id=”A”; chiku=1111; output; id=”B”; chiku=2222; o …

【SAS】SCAN関数は区切り文字を認識し、一部を抜き出せる。

今回はSCAN関数について解説します。 /* “1111”,”2222″,”3333″ */ data data1; Id1=”1111″,”2222″,”3333″; run; data data2 …

【SAS】%MACROはマクロを定義することができる。その3 マクロには引数を設定できる。【%MEND】

今回はマクロに引数を設定する方法について解説していきたいと思います。(事前に読んでおきたい記事:【SAS】%MACROはマクロを定義することができる。【%MEND】 | ビジネスイッチ (how-to …

【SAS】DATAステートメントは複数データセットを出力できる。

今回はDATAステートメントで複数データセットを出力する方法について解説します。 /* data2 data3_1 */ data data1 ; id1=”1111″; id2=”1111″; id …

【SAS】CALL SYMPUTは関数を用いてマクロ変数の代入ができる。

今回はCALL SYMPUTについて解説します。 /*その1*/ data data1; kyo = today(); run; today()は本日の日付をSAS日付で取得する。 /*その2*/ d …