a01 a02 a03 a05 a07 五个变量,我想通过宏输出每个变量的频数,同时把变量值的编码显示为问卷上的内容。就是proc format里面的值。现在的问题就是不知道怎么通过循环调用第一个宏,让它对每一个变量调用freq过程。
分割线以上的部分基本能实现出来,但是需要手动给%fpro(varia=,variaf=);赋值,我想用一个宏实现它...哪位高手能帮我看看怎么弄么?
%macro fpro(varia=,variaf=);
data a;
set practice.factor118;
proc freq data=a;
format &varia &variaf;
tables &varia;
run;
%mend fpro;
proc format;
value a01f 1="男" 2="女";
value a02f 2="20以下" 3="20~29" 4="30~39" 5="40~49" 6="50及以上";
value a03f 1="初中及以下" 2="高中" 3="中专" 4="大专" 5="大本" 6="研究生";
value a07f 1="医生" 2="护士" 3="医技人员" 4="管理人员" 5="其它";
value a09f 1="执业医师" 2="执业助理医师" 3="仍不是执业医师或执业助理医师";
run;
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
%fpro (varia=a01 a02 a03 a07 a09,variaf=a01 a01f. a02 a02f. a03 a03f. a07 a07f. a09 a09f.);
[此贴子已经被作者于2008-11-9 15:26:22编辑过]