現在の変数ラベルに,自動的に変数名を追加するプログラムです.
PRINTプロシジャで変数名とラベル名を両方表示したい時に使います.
*******************************************
varlabel.sas
010404 翔
dataset のラベルに,変数名を追記する
program generator
ex) ラベル"性別" を "sex-性別" とする
注) ラベルは,100byteで切り捨てになる
*******************************************;
%macro varlabel(lib /* 対象Datasetのlibname */
,ds /* 対象Datasetのdataset name */
);
proc contents data=&lib..&ds noprint out=varlab;run;
data _null_;set varlab end=eof;
file "tmp.sas";
if _n_=1 then do;
put "proc datasets lib=&lib;";
put " modify &ds;";
end;
length varlabel $ 100;
varlabel='"'||compress(name)||"-"||compress(label)||'";';
put " label " name "= " varlabel;
if eof then put "run;";
run;
%inc "tmp.sas";
%mend;
/*起動方法*/
%*inc "e:\mytools\varlabel.sas";
%*varlabel(work,dsn);