FORMAT SAS

【SAS】FORMATプロシージャはフォーマットルールを定義し、値を書き換える。その2

投稿日:2021年12月2日 更新日:

今回もFORMATプロシージャについて解説します。

前回は値の範囲によって、定義されたフォーマットルールに従い、値を書き換えるという内容でした。


/* = */
data data1;
  番号="111111"; test = 10;
    output;
  番号="222222"; test = 20;
    output;
  番号="333333"; test = 30;
    output;
  番号="444444"; test = 40;
    output;
  番号="555555"; test = 50;
    output;
  番号="666666"; test = 60;
    output;
run;


proc format;
  value point  10= 'Low'
               20= 'High';
run;


proc print data = data1;
  format test point.;
run; 


  • formatプロシージャにより10 = ‘Low’、20 = ‘High’とする「point」というルールを設定する。
  • 変数testをpoint.のフォーマットルールで書き換える。
  • 条件が値でも、実行できる。

/* low high */
data data1;
  番号="111111"; test = 10;
    output;
  番号="222222"; test = 20;
    output;
  番号="333333"; test = 30;
    output;
  番号="444444"; test = 40;
    output;
  番号="555555"; test = 50;
    output;
  番号="666666"; test = 60;
    output;
run;


proc format;
  value point low  -   50 = 'Low'
  51 - high = 'High';
run;

proc print data = data1;
  format test point.;
run; 

  • formatプロシージャによりlow – 50 = ‘Low’、51 – high = ‘High’とする「point」というルールを設定する。
  • 変数testをpoint.のフォーマットルールで書き換える。
  • 範囲にlow, highを設定できる。

-FORMAT, SAS

執筆者:


comment

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

関連記事

【SAS】FREQプロシージャは頻度集計とクロス集計をする

今回はFREQプロシージャについて解説します。 /* freq 頻度集計 */ data data1; 番号=”AAAAAA”; コード=”02″; 金額=1999; output; 番号=”AAAA …

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

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

【SAS】UPCASE関数は文字列を大文字化する。

今回はUPCASE関数について解説します。 /* upcase */ data data1; Id1=1111; char1=”US”; char2=”aaa”; output; Id1=2222; …

【SAS】SAS Studio上でカラムの順番を変える方法

今回はSAS Studio上でカラムの順番を変える操作について解説します。 ちなみにカラムの出力順をプログラムで制御する方法は過去の記事で解説しています。(参考:【SAS】FORMATはカラムの出力順 …

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

今回はPUTN関数について解説します。 /* putn_point. */ proc format; value point 1-50=’Low’ 51-100=’High’; run; data d …