当我们在做demographic表的时候通常是把所有需要的分类变量都列出来进行汇总,比如性别、用药分组等等,但是往往会有部分分类变量没有数据出现计数为0的情况,如何将“0”呈现在输出的汇总表中?这里列举几种解决方法:
--proc freq _Sparse--
-
在proc freq中使用SPARSE,使分类变量里所有存在的值随机组合对数据进行预处理,然后使用TABLE语句中的SPARSE选项执行PROCFREQ。
Example1
假设:试验设计为两个治疗组:trt1&trt2。trt1中包含男性&女性,但trt2中没有男性,分别统计两个trt男性和女性的数量。
data dm;
input subject $ sex $ treatment $ ;
cards;
101 m trt1
102 f trt1
202 f trt2
203 m trt1
301 m trt1
302 f trt2
;
run;
/*若未用sparse*/
proc freq data=dm noprint;
tables treatment*sex / out=count;
run;
结果如下:count数据集中仅有三条观测,并未显示trt2中对于男性数量的统计结果
/*若使用sparse*/
proc freq data=dm noprint;
tables treatment*sex / sparse out=count1;
run;
结果如下:count1数据集中四条观测,trt2男性数量计数“0”也显示了出来