%eval %IF %PUT SAS

【SAS】%PUTステートメントは文字列をログに出力する。その2

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

今回も%PUTについて解説します。

以下の記事では、%putにより、文字列をログに表示できるという内容でした。


/* 1+1 */
%put 1+1;

  • %putにより文字列をログに表示する。
  • 計算式は計算されずにそのまま表示されてしまう。

/* %eval(1+1) */
%put %eval(1+1);

  • %putにより文字列をログに表示する。
  • %evalにより、計算式を計算して出力できる。

/* re_num; 1+1; */
%macro re_num;
  1+1;
%mend;

%put %re_num;

  • %putにより文字列をログに表示する。
  • マクロはデータステップの実行だけでなく、戻り値を返すこともできる。
  • %putはマクロから返された戻り値を出力している。
  • 1+1は計算されずにそのまま表示されてしまう。

/* re_num; %eval(1+1); */
%macro re_num;
  %eval(1+1);
%mend;

%put %re_num;

  • %putにより文字列をログに表示する。
  • マクロはデータステップの実行だけでなく、戻り値を返すこともできる。
  • %putはマクロから返された戻り値を出力している。
  • %eval()により、計算式を計算して出力できる。

/* re_num %eval(%re_num) */
%macro re_num;
  1+1;
%mend;

%put %eval(%re_num);

  • %putにより文字列をログに表示する。
  • マクロはデータステップの実行だけでなく、戻り値を返すこともできる。
  • %putはマクロから返された戻り値を出力している。
  • %eval()により、計算式を計算して出力できる。
  • %eval()の引数内でマクロ呼び出しをしてもエラーとなる。

/* %re_num(1) */
%macro re_num(m);
  %if &m.=1 %then "一致した";
  %else &m.;
%mend;

%put %re_num(1);

  • %putにより文字列をログに表示する。
  • マクロはデータステップの実行だけでなく、戻り値を返すこともできる。
  • %putはマクロから返された戻り値を出力している。
  • 引数を渡したマクロ呼び出しをしている。
  • %ifにより、戻り値が分岐している。

/* %re_num(2) */
%macro re_num(m);
  %if &m.=1 %then "一致した";
  %else &m.;
%mend;

%put %re_num(2);

  • %putにより文字列をログに表示する。
  • マクロはデータステップの実行だけでなく、戻り値を返すこともできる。
  • %putはマクロから返された戻り値を出力している。
  • 引数を渡したマクロ呼び出しをしている。
  • %ifにより、戻り値が分岐している。

-%eval, %IF, %PUT, SAS

執筆者:


comment

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

関連記事

【SAS】SAS Studioのフィルター機能の使い方を解説 その1 ~文字型~

今回はSAS Studioのフィルター機能について解説します。 /* 文字型 */ data data1; id1=”1111″; id2=”1111″; id3=”1111″; output; id …

【SAS】0による除算【SAS Base Programming対策3】

今回は0による除算(割り算)を解説します。 数学では「0で割れない」とか、極限の単元だと「∞に発散する」とか言われますが、SASで0による除算を行うとどうなるのか触れていきます。 知ってるか知らないか …

【SAS】OPTIONS NOMPRINT NOSOURCEはログに出力されるソースコードを非表示にできる。

今回はOPTIONS NOMPRINT NOSOURCEについて解説します。 /*nomprint nosource_1 */ options nomprint nosource; data data …

【SAS】SUMは足し算をする。その2【要約関数】【SQL】

今回もSQLのSUM(要約関数)について解説します。 過去記事でも、SQLのSUM関数について取り上げました。【SAS】SUMは足し算をする。その1【SQL】 | ビジネスイッチ (how-to-bu …

【SAS】DROPで良く問われる文法【SAS Base Programming対策8】

今回もDROPについて解説します。 (対比:KEEP 【SAS】KEEPはカラムの選択に使える。 | ビジネスイッチ (how-to-business.com)) 過去記事ではDROPの使い方について …