&& SAS

【SAS】マクロ変数の&&について解説

投稿日:

今回はマクロ変数の&&について解説していきます。

(参考:%PUT 【SAS】%PUTステートメントは文字列をログに出力する。その1 | ビジネスイッチ (how-to-business.com)

比較の為、まずは通常のマクロ変数を記載します。


/* & */
%let yyyymm_1 = 202301;

%put &yyyymm_1.;
  • &yyyymm_1.を展開して202301とする。

続いて、&&を用いたパターン


/* && */
%let yyyymm_1 = 202301;
%let num = 1;

%put &num.;
%put &&yyyymm_&num..;

&&の役割としては、以下の2つ。

  1. &&を一旦スルーして次に出てくる&~.を展開する。
  2. 1の終了後、&&⇒&と読み替えて扱う。

動きを解説すると以下の様になります。

-&&, SAS

執筆者:


comment

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

関連記事

【SAS】MEANSも集計に便利(デフォルトで結果を出力)【NOPRINT】

今回はMEANSについて解説します。 似た文法でSUMMARYプロシージャがあります。 【SAS】SUMMARYは集計に便利 今回のMEANSプロシージャも集計を行うのですが、こちらはデフォルトで「結 …

【SAS】KEEPはカラムの選択に使える。

今回はKEEPについて解説していきたいと思います。 DROPと対になる感じで、 DROPが指定したカラムを捨てるのに対し、KEEPは指定したカラムのみ残す動きを取ります。 (参考「DROP」:【SAS …

【SAS】COALESCEはNULLを数字に置き換える

今回はCOALESCEについて解説します。 /*coalesce 正常形*/ data data1; id=”A”; chiku=1111; output; id=”B”; chiku=2222; o …

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

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

【SAS】TIME関数はSAS時間値を取得する。

今回はTIME関数について解説します。 /* time_1 */ data data1; Id1 = time(); run; time()により、SAS時間値を取得する。 /* time_2 */ …