使 proc 制表的输出垂直?

Make the output of proc tabulate to vertical?

我的SAS代码如下:

DATA CLASS;
INPUT NAME $ SEX $ AGE HEIGHT WEIGHT;
CARDS;
ALFRED  M  14  69.0 112.5
ALICE   F  13  56.5  84.0
BARBARA F  13  65.3  98.0
CAROL   F  14  62.8 102.5
HENRY   M  14  63.5 102.5
RUN;
PROC PRINT;
    TITLE 'DATA';
RUN;
proc print data=CLASS;run;

proc tabulate data=CLASS;
    var AGE HEIGHT WEIGHT;
    table (AGE HEIGHT WEIGHT)*(MEAN STD MEDIAN Q1 Q3 MIN MAX n NMISS);
    title 'summary';
run;

输出看起来像

怎样才能让输出列表在竖直方向?

没有逗号的 TABLE 语句 (,) 只指定了一个列表达式。

在您的 table 语句中使用逗号

table <em><row-expression></em> , <em><column-expression></em> ;

示例:



DATA CLASS;
INPUT NAME $ SEX $ AGE HEIGHT WEIGHT;
CARDS;
ALFRED  M  14  69.0 112.5
ALICE   F  13  56.5  84.0
BARBARA F  13  65.3  98.0
CAROL   F  14  62.8 102.5
HENRY   M  14  63.5 102.5
;

ods html file='tabulate.html' style=plateau;

TITLE 'DATA';
proc print data=CLASS;
run;

proc tabulate data=CLASS;
    var AGE HEIGHT WEIGHT;

    table (AGE HEIGHT WEIGHT)*(MEAN STD MEDIAN Q1 Q3 MIN MAX n NMISS);

    * comma being used;
    table (AGE HEIGHT WEIGHT),(MEAN STD MEDIAN Q1 Q3 MIN MAX n NMISS);

    * comma being used, swapping row and column expressions;
    table (MEAN STD MEDIAN Q1 Q3 MIN MAX n NMISS),(AGE HEIGHT WEIGHT);

    title 'summary';
run;