PUTN SAS

【SAS】PUTN関数は数値に対して出力形式を指定して変換する。

投稿日:2022年2月19日 更新日:

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


/* putn_point. */
proc format;
 value point 1-50='Low'
             51-100='High';
run;

data data1;
 Id1=putn(1,point.);
run;

  • formatプロシージャにより1 – 50 = ‘Low’、51 – 100 = ‘High’とする「point」というルールを設定する。
  • putnにより1をpoint.のルールに書き換える。
  • putnではpoint.はエラーとなる。

/* putn_"point." */
proc format;
 value point 1-50='Low'
             51-100='High';
run;

data data1;
 Id1=putn(1,"point.");
run;

  • formatプロシージャにより1 – 50 = ‘Low’、51 – 100 = ‘High’とする「point」というルールを設定する。
  • putnにより1をpoint.のルールに書き換える。
  • putnでは”point.”は正常に動く。

/* putn_point */
proc format;
 value point 1-50='Low'
             51-100='High';
run;

data data1;
 Id1=putn(1,point);
run;

  • formatプロシージャにより1 – 50 = ‘Low’、51 – 100 = ‘High’とする「point」というルールを設定する。
  • putnにより1をpointのルールに書き換える。
  • putnではpointは変数として認識されている(?)。

/* putn_"point" */
proc format;
 value point 1-50='Low'
             51-100='High';
run;

data data1;
 Id1=putn(1,"point");
run;

  • formatプロシージャにより1 – 50 = ‘Low’、51 – 100 = ‘High’とする「point」というルールを設定する。
  • putnにより1をpointのルールに書き換える。
  • putnでは”point”は正常に動く。

/* putn_Id1 */
proc format;
 value point 1-50='Low'
             51-100='High';
run;

data data1;
  Id1="point";
    output;
run;

data data2; set data1;
 Id2=putn(1,Id1);
run;

  • formatプロシージャにより1 – 50 = ‘Low’、51 – 100 = ‘High’とする「point」というルールを設定する。
  • putnにより1をpointのルールに書き換える。
  • putnではId1 = “point”でも正常に動く。

/* putn_Id1,Id2 */
proc format;
 value point 1-50='Low'
             51-100='High';
run;

data data1;
  Id1=1; Id2="point";
    output;
run;

data data2; set data1;
 Id3=putn(Id1,Id2);
run;

  • formatプロシージャにより1 – 50 = ‘Low’、51 – 100 = ‘High’とする「point」というルールを設定する。
  • putnにより1をpointのルールに書き換える。
  • putnではId1 =1, Id2 = “point”でも正常に動く。

-PUTN, SAS

執筆者:


comment

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

関連記事

【SAS】ORDER BYは指定した項目の順番でレコードを並び替える。【SQL】

今回はORDER BYについて解説します。 /* order by_1 */ data data1; Id1=1111; Id2=1111; Id3=1111; output; Id1=2222; I …

【SAS】_NULL_は出力しないデータセット文を作るのに便利。

今回は_NULL_について解説します。 実は前回の記事で使用していた文法です。 【SAS】CALL SYMPUTは関数を用いてマクロ変数の代入ができる。 単元は分けた方が良いと思ったので、別記事として …

【SAS】データセットのオブザベーション数で処理を分岐させる方法【IF】【NOBS】

今回は、データセットのオブザベーション数により、処理を分岐させる方法について解説していきたいと思います。 (参考:【SAS】データセットの有無で処理を分岐させる方法【%IF】【EXIST】 | ビジネ …

WORKライブラリをLIBNAMEで自動的に割り当てる方法を考察【PATHNAME】【%SYSFUNC】

今回はWORKライブラリをLIBNAMEで自動的に割り当てる方法を考察していきたいと思います。 workライブラリはlibnameを使ってlib_1のようにライブラリ名を割り当てる事ができます。 /* …

【SAS】STOPステートメントは処理を切り上げる。

今回はSTOPステートメントについて解説していきます。 /* stop1 */ data data1; id1=”1111″; id2=”1111″; id3=”1111″; output; stop …