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】INDEXC関数は文字列から特定の文字を探して位置を返す。

今回はINDEXC関数について解説します。 data data1; Id1=”1111″; Id2=”1111″; Id3=”1111″; output; Id1=”2111″; Id2=”2111″ …

【SAS】FIRST, LASTは重複を削除しユニーク化する

今回はfirst, lastについて解説します。 /*first last1*/ data data1; 番号=”1111″; 日付=”20210331″; output; 番号=”1111″; 日付 …

【SAS】IFステートメントは処理を分岐できる。その2~ELSE IF、ELSE~

前回はIF文のオーソドックスな構文を解説しましたが、今回はELSE IFとELSEを使った構文についても解説していきます。 (参考:【SAS】IFステートメントは処理を分岐できる。その1 | ビジネス …

【SAS】TRANSTRN関数は指定した文字を別の文字に変換する。

/* a */ data data1; Id1=”abcd”; Id2=”ABCD”; output; Id1=”abcd”; Id2=”ABCD”; output; Id1=”abcd”; Id2= …

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

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