在SAS中使用PROC REPORT,如果某个ACROSS变量有5种不同的值可能性(例如,1 2 3 4 5),但在我的数据集中没有观察到该变量等于5,如何让报告显示5列,并显示0表示具有该值的观察值?
目前我的PROC REPORT输出只是没有显示那些没有观察值的值列。
答案 0 :(得分:7)
当推动推进时,你可以做一些像这样的黑客攻击。请注意,SASHELP.CLASS的SEX变量没有丢失:
proc format;
value $sex 'F' = 'female' 'M' = 'male' 'X' = 'other';
run;
options missing=0;
proc report data=sashelp.class nowd ;
column age sex;
define age/ group;
define sex/ across format=$sex. preloadfmt;
run;
options missing=.;
/*
Sex
Age female male other
11 1 1 0
12 2 3 0
13 2 1 0
14 2 2 0
15 2 2 0
16 0 1 0
*/