&& 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】SCAN関数は区切り文字を認識し、一部を抜き出せる。

今回はSCAN関数について解説します。 /* “1111”,”2222″,”3333″ */ data data1; Id1=”1111″,”2222″,”3333″; run; data data2 …

【SAS】%SYSFUNC関数はデータステップの外でも関数を使えるようにする。その2(%LETステートメント中の挙動)

今回は%SYSFUNC関数について、%LETステートメント中の挙動に着目して解説します。 /* substr */ %let a = substr(123456789, 2, 4); data dat …

【SAS】ATTRIBによる形式変換とPUTによる形式変換の違いを解説

今回は、ATTRIBによる形式変換とPUTによる形式変換の違いを解説します。 結論:ATTRIBは入力項目が数値型、文字列型どちらにも対応できるが、    PUTは入力項目が数値型の時しか使えない。 …

【SAS】IFステートメントは処理を分岐できる。その4~THEN DO, ELSE DO~【END】

今回はIF文の分岐で、複数の命令を実行する方法について、解説していきます。 【併せて読みたい記事】 【SAS】IFステートメントは処理を分岐できる。その1 | ビジネスイッチ (how-to-busi …

【SAS】NODUPはソート時に全ての変数における重複を削除する

今回はNODUPについて解説します。 前回NODUPKEYについて解説しました。 【SAS】NODUPKEYはソート時に重複を削除する 今回のNODUPは前回の文法の亜種という感じです。 /*nodu …