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】IFステートメントは処理を分岐できる。その2~ELSE IF、ELSE~

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

【SAS】【SQL】SQLにおける複数テーブルの結合 その1【UNION ALL】【Snowflake】

今回は複数テーブルの結合について解説します。 /* 複数テーブルの結合_1 */ data data1; Id1=1111; Id2=1111; Id3=1111; output; Id1=2222; …

【SAS】YYYY-MM表記にする方法【SUBSTR】【||】

今回はYYYYMMDD表記の年月日をYYYY-MM表記にしたいと思います。 結論:SUBSTRと||を使います。 (SUBSTR:【SAS】SUBSTR関数は文字列から指定した文字数分切り取る。 | …

【SAS】INTNX関数は指定期間の条件を満たす日付けを返す。その2

今回はINTNX関数について追加で解説します。 過去記事では INTNX関数 の使い方(引数3つ)について解説しました。⇒【SAS】INTNX関数は指定期間の条件を満たす日付けを返す。 | ビジネスイ …

【SAS】データセットのエンコードを答えさせる問題【CONTENTS】【SAS Base Programming対策7】

今回はデータセットのエンコードを答えさせる問題について解説します。SAS Base Programming試験を受けたときに出題されました。 data data1; Id1=1111; Id2=111 …