1

次の構文を使用して、SAS SQL プロシージャを介してマクロ変数を作成できます。

select var into :mvar

しかし、データステップにも同じ方法があるのだろうか。

私はデータセットを持っています。

A    B
===  ===
a1   b1
a2   b2
a3   b3

MA以下のステートメントで呼び出されるマクロ変数を作成できます。

proc sql noprint;
   select "'"||A||"'" into :MA separated by ","
   from dataset;
quit;

データステップでそれを行う方法は?

4

1 に答える 1

7

まず、サンプル データセットを作成します。

data dataset;
infile datalines;
input A  $ B $;
datalines;
a1 b1
a2 b2
a3 b3
;
run;

以下のステップは、と呼ばれるマクロ変数を出力するためPROC SQLに使用して、ほとんどあなたが行うことを行います:CALL SYMPUTMA

data _NULL_;
  retain amac;
  length amac $35;
  set dataset;
  if _N_ = 1 then amac=a; else amac=cats(amac,',',a);
  put amac=;
  call symputx('MA',amac);
 run;

 %put &MA;
于 2015-04-21T05:56:19.023 に答える