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】ATTRIBとRENAMEを同時に使うときの注意点

今回はATTRIBとRENAMEを同時に使うときに注意するべきポイントについて解説していきます。 SAS日付となっているid1をddMONyyyy形式にして、id4とするケースを仮定します。 結論:A …

【SAS】%SYSFUNC関数はデータステップの外でも関数を使えるようにする。

今回は%SYSFUNC関数について解説します。 /* sysfunc_1 */ %put %sysfunc(substr(123456789, 2, 4)); %sysfuncにより、関数をデータステ …

【SAS】WORKライブラリの性質について解説

今回はWORKライブラリについて解説します。 libnameを使わなくてもデフォルトで存在するライブラリです。 そのため、libnameを使わずにworkライブラリを使用することができます。 /* l …

【SAS】足し算。その1(+演算子を用いた計算)

今回は+演算子を用いた足し算について解説します。  /* + */ data data1; Id1=1111; Id2=1111; Id3=1111; output; Id1=2222; I …

【SAS】SASで良く使うテクニック。その3 「Ctrl+D」~データセットのオブザベーション数が多いとき~【Excel】

今回はSASで良く使うテクニックということで、データセットのオブザベーション数(行数)が多いときは「Ctrl+D」が役に立つ理由を解説していきます。 (参考:【SAS】SASで良く使うテクニック。その …