SASデータセットの各行の値を(任意の区切り文字)で結合し、文字列としてマクロ変数に格納する
data _null_;
set work.input_table end = eof;
attrib
input_file_list length = $1000.
output_file_list length = $1000.
;
retain input_file_list output_file_list;
input_file_list = catx(' ', input_file_list, cats('input_', category, '.xlsx'));
output_file_list = catx(' ', output_file_list, cats('output_', category, '.csv'));
/* 最後まで行ったらマクロ変数に出力 */
if (eof) then do;
call symputx("input_file_list", input_file_list, 'G');
call symputx("output_file_list", output_file_list, 'G');
end;
run;
-
end=一時変数名 最後の行を読み込んだ時、一時変数に「1」が入る
-
_N_ データステップの反復回数(処理中の行番号)が格納される
-
cats(値1, 値2, ...) 引数値の両端の半角スペースを除いて結合する