【SAS BASE】PROC TABULATE(输出更加精美的tabulate报告)

PROC TABULATE的一般形式:(主语与FREQ过程不同,这里是table 语句,不是tables)

1 PROC TABULATE FORMAT=options;/*FORMAT=选项改变table中所有cell的格式*/
2      VAR analysis-variable-list;
3      CLASS classification-variable-list;/*在下面table语句中出现的变量必须预先在VAR语句或CLASS出现过*/
4      TABLE page-dimension, row-dimension, column-dimension/BOX=option MISSTEXT=option;
5 /*BOX=选项指定输出的tabulate报表的左上角的空格内的句子;MISSTEXT=选项赋特定的值给空的data cells*/
6 RUN;     

特别要注意的是:

  1. VAR语句:在VAR语句中除了列出变量名之外,还可以包含统计量,如:ALL(在该维度求和),MAX,MIN,MEAN,MEDIAN,MODE,N,NMISS,PCTN,PCTSUM,STDDEV,SUM.
  2. TABLE语句同纬度变量的Concateting,crossing, and grouping:

    1 concatenating: simply list them separated by a space;
    2 crossing: list variables或keywords separated by an *;
    3 grouping:将变量或关键字列表在括号内
    
     1.keyword ALL is generally concatenated;
     2. To request other statistics, cross the keyword with the variable name.

例子:

 1 DATA boats;
 2      INFILE ‘C:\Myrawdata\boat.dat‘;
 3      INPUT Name $ 1-12 port $ 14-20 Locomotion $ 22-26 Type $ 28-30 price 32-36;
 4 RUN;
 5 *Changing headers;
 6 PROC FORMAT;/*若想改变CLASS变量的值做的标题,step1:通过此FORMAT语句定义新格式*/
 7     VALUE $typ ‘cat‘=‘Catamaran‘
 8                ‘sch‘=‘schooner’
 9                ‘yac‘=‘yacht‘;
10 RUN;
11
12 PROC TABULATE DATA=boats FORMAT=DOLLAR9.2;
13     CLASS Locomotion Type;
14      VAR Price;
15       Format Type $ typ.;
16       TABLE  Locomotion=‘‘ ALL, /*改变变量的标题*/
17                   MEAN=‘‘*Price=‘Mean price by type of boat‘*(Type=‘‘ ALL)/BOX=’Full day Excursions ‘ MISSTEXT=‘none‘;/*改变关键词的标题*/
18       TITLE;
19 RUN;

备注:

  • 改变PROC TABULATE输出表格的标题
  1. 改变CLASS变量的分类值形成的标题:通过此FORMAT定义一个新的格式,然后通过FORMAT语句赋值给此分类变量;
  2. 改变变量或keyword的标题:将此变量或keyword与用单引号括起来的新标题等号相连即可,特别的,若令变量=’’,则标题被消去。
  • 为每个Cells指定不同的结果:在PROC FORMAT后加上FORMAT=选项,使得表中所有单元的格式一样,若需要不同单元有不同的格式,则需要在TABLE语句后加上FORMAT=选项才能实现(TO apply a format to an individual variable, cross it with the variable name).例如:

    1 TABLE Region, Mean*(Sales*FORMAT=COMMA 8.0
    2                     Profit*FORMAT=DOLLAR10.2);

【SAS BASE】PROC TABULATE(输出更加精美的tabulate报告),布布扣,bubuko.com

时间: 2024-10-08 12:00:45

【SAS BASE】PROC TABULATE(输出更加精美的tabulate报告)的相关文章

【SAS BASE】PROC REPORT

PROC REPORT包含了PRINT.MEANS.TABULATE.SORT过程和DATA步的功能: 一.基本语法: 1 DATA natparks; 2 INFILE 'C:\MyRawdata\parks.dat'; 3 INPUT Name $ 1-21 Type $ Region $ Museums Camping; 4 RUN; 5 6 /*-----Group and Across Variables(Group:纵向;Across:横向)---*/ 7 *Region as Gr

【SAS BASE】PROC EXPORT

PROC EXPORT可导出两种类型的文件: 导出delimited文件 1 *例子; 2 PROC EXPORT DATA=hotels 3 OUTFILE='C:\MyRawData\Hotels.txt' /*后缀名决定了输出文件的格式,除此之外,额也可以通过DBMS=选项来指定.*/ 4 /*例如:space-delimited文件时没有标准的后缀名的,只能通过DBMS=选项来输出*/ 5 DBMS=DLM /*若输出CSV文件,则DBMS=CSV; 6 若输出txt文件,则DBMS=T

【SAS BASE】PROC FREQ

一般形式: 1 PROC FREQ; 2 TABLES variable_combinations/options; 3 /*variable_combinations 4 若为单变量:TABLE variable-name; 5 若为多变量: TABLE variable-name-1 variable-name-2 ...; 6 若为交叉变量:TABLES variable-name-1*variable-name-2; 7 */ 常见的options有: 1 LIST:将cross-tab

【SAS BASE】PROC MEAS

1 PROC MEANS OPTIONS; /*默认输出:非缺省数目.均值.标准差.最小值.最大值*/ 2 BY variable-list;/*必须要预先排序*/ 3 CLASS variable-list;/*功能与BY语句相同,不需要预先排序*/ 4 VAR variable-list; 5 OUTPUT OUT=data-set statistic(variable-list)=name-list; /*除了VAR与语句中的变量名外,还有两变量:_TYPE_和_FREQ_*/ 6 /*例

【SAS BASE】PROC PRINT

1 PROC PRINT DATA=data-set NOOBS LABEL; 2 BY Variable-list;/*需提前排序,对每个BY变量输出,且在每页顶部打印该页By变量名*/ 3 ID Variable-list;/*不打印出观测值,且放在最左边*/ 4 SUM Variable-list; 5 VAR Variable-list; 6 RUN; [SAS BASE]PROC PRINT

【SAS BASE】利用FILE语句和PUT语句输出简单报告

1 DATA _NULL; /*_NULL_使得系统不需要生成一个新的数据集,以节省内存*/ 2 INFILE 'C:\MYRAWDATA\Candy.dat'; 3 INPUT Name $ 1-11 class @15 DateReturned MMDDYY10. Candytype $ Quantity; 4 Profit=Quantity*1.25; 5 6 /*重点:利用FILE和PUT输出报告*/ 7 FILE 'C:\Myrawdata\student.txt' PRINT; /*

【SAS BASE】FORMAT Statement及PROC FORMAT

1 FORMAT Profit Loss DOLLAR8.2 Saledate MMDDYY8.; 2 PUT Profit DOLLAR8.2 LOSS DOLLAR8.2 Saledate MMDDYY8.; FORMAT语句指定每个变量具体的格式;这里特别要注意的是,FORMAT语句中,指定Profit和Loss同一个格式,为DOLLAR8.2. 1 DATA Carsurvey; 2 INFILE 'c:\myrawdata\cars.dat'; 3 INPUT Age Sex Inco

【SAS BASE】PROC SORT

1 PROC SORT DATA=data-set 2 OUT=neat 3 NODUPKEY 4 DUPOUT=extraobs; 5 BY variable-1 variable-2 ... variable-n; 6 RUN; 备注: 若不指定OUT=,则自动将排序后的数据代替原有数据集: NODUPKEY选项命令SAS 对BY语句中的变量删去重复观测值: DUPOUT=选项命令SAS将删去的数据放入其后指定的数据集中: 排序顺序(ASCII):blanks<-numericals(缺失值

【SAS BASE】PROC CONTENTS与LABEL

CONTENTS过程(查看数据集的属性) 1 PROC CONTENTS DATA=data-set; 2 RUN; LABEL 1 /*LABEL分为两种,但均不能超过256个字符*/ 2 LABEL=data-set (给数据集定义一个Label) 3 LABEL statement (赋予每个变量一个label) 4 5 /*对于变量来说,如果在DATA布中采用LABEL语句,则变量的描述会存储在数据集中,并在PROC CONTENTS中打印出来: 6 而若在PROC中采用,将不会存储在数