我有从2012年到日期的月度数据集。我想写一个宏,它将附加所有包含变量选择列表的月度数据集。数据集名称的格式为:monthly_201201。有什么想法吗?
数据集都没有相同的变量集。优先查找遍历每个句点的宏,从数据集中获取一组选定值并附加到主数据集。
这就是我的尝试
%macro combine(prefix);
data combined (keep = a b c d);
set x.monthly_data_201801 (obs = 0);
run;
%do j=2012 %to 2018;
%do i=1 %to 12;
%if %sysfunc(exist(x.&prefix&j&i)) %then %do;
proc append
base = combined
data = x.&prefix&j&i (keep = a b c d) force;
run;
%end;
%end;
%end;
%mend combine;
%combine(monthly_data_);