Hi:
As explained in the documentation for OUT=
http://support.sas.com/documentation/cdl/en/proc/61895/HTML/default/a002473736.htm#a003065521
The number of observations in the output data set depends on the number of categories of data that are used in the tables and the number of subtables that are generated.
And then this note
http://support.sas.com/kb/14/884.html
explains that:
In some cases TABULATE needs to generate multiple output data set
variables for percentage statistics. That is because there can be
multiple denominator crossings, just like there can be multiple
numerator (table) crossings.
This means that merely using the statistic name or analysis variable
plus the statistic name will not guarantee a unique data set variable
name.
I believe the documentation explains why the statistic names for the output dataset cannot be static/fixed with PROC TABULATE.
However, since you are only getting simple percents, without any complicated crossings, you might like the way that PROC FREQ creates the simple N and PCTN statistics in the output dataset. N is labelled FREQUENCY and PCTN is labelled PERCENT.
cynthia
[pre]
ods output onewayfreqs=work.frqout;
proc freq data=sasdata;
tables var1 var2 var3 var4 var5 / nocum ;
run;
proc print data=frqout;
title 'Using PROC FREQ';
run;
[/pre]