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】PATHNAME関数はライブラリのディレクトリパスを返す

今回はPATHNAME関数について解説します。 data data1; Id1 = pathname(“work”); run; pathnameによりライブラリworkのディレクトリパスを代入できる …

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

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

【SAS】TODAY()とDATE()はどちらもSAS日付値を取得する。

以下の2記事でtoday()を使ってきました。 【SAS】PUT+DATE,YYMMDDはSAS日付値をフォーマットを変換して表示する 【SAS】YYMMDDの可能性を考える(表示できる日付形式はどこ …

【SAS】ATTRIBとRENAMEを同時に使うときの注意点

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

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

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