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 Group and Type as Across Variable with Sums; 8 PROC REPORT DATA=natparks NOWINDOWS HEADLINE; 9 COLUMN Region Type N, ( Museums Camping),MEAN; 10 /*在报告中加入统计量:只需在COLUMN语句的变量后加上统计量,并用逗号隔开。特别的是N不需要,若在COLUMN语句中插入N,则会计算报告中那行的观测数*/ 11 Define Region/GROUP; 12 Define Type/Across; 13 TITLE ‘...‘; 14 RUN;
说明:
1. PROC REPORT:
NOWINDOWS: 命令SAS不要打开interatctive Report winow; HEADLINE:若无HEADLINE选项,SAS会直接在列名称下面列出具体的数据,而HEADLINE选项命令SAS在列名下面划一条线再输入数据; HEADSKIP:作用同HEADLINE,命令SAS在列名下面划一条空白再输入数据
2. COLUNM语句:与PROC PRINT语句中的VAR类似,告诉SAS哪些变量需要以什么顺序输出。若省去,则全部输出。
3.DEFINE语句:为变量指定特定的options.
1 DEFINE variable/ options ‘column-header‘; 2 例如: 3 DEFINE Age/ ORDER ‘Age at/ Admission‘ WIDTH=9;/*其中,/为换行,Admission的宽度为9*/
其中,Options有:
1 ACROSS : 为变量的每一个unique值创建一列; 2 ANALYSIS: 为变量计算统计量(默认为数值性变量,统计量默认为求和); 3 COMPUTED:为calculate in a compute block的值创建一个新的变量; 4 DISPLAY: 为数据集中每个新观测创建一行,默认是字符型; 5 GROUP:为变量的每个unique值创建一行; 6 ORDER: 为变量的每一个观测值创建一行.
备注:
1.若数据中只有数值型变量,则默认情况下,PROC REPORT会自动的只输出这些变量的和。若数据中含有字符型变量,则PROC REPORT对每个观测输出一行详细的报告;
二、在PROC REPORT OUTPUT 中加入summary breaks
1 BREAK location variable/options; 2 /*对variable的每个unique值的location位置添加一个break,BREAK语句中的变量必须实现在DEFINE语句中定义过*/ 3 RBREAK location/options; 4 /*对report 的location位置添加一个break,因此不需要指定variable*/ 5 6 【Location的值】:BEFORE或者AFTER; 7 【OPTIONS的值】: 8 1. OL/UL:在break的上面/下面画一条线; 9 2. PAGE:开始新的一页; 10 3. SKIP:插入一个blankline 11 4. SUMMARIZE:插入数值型变量的和。
三、在PROC REPORT OUTPUT 中加入computed variable(自定义计算变量)
1 DATA natparks; 2 INFILE ‘C:\MyRawdata\parks.dat‘; 3 INPUT Name $ 1-21 Type $ Region $ Museums Camping; RUN; 4 5 *COMPUTE New variables that are numeric and character; 6 PROC REPORT DATA=natparks NOWINDOWS HEADLINE; 7 COLUMN Name Region Museums Camping Facilities Note; 8 DEFINE Museums/ANALYSIS SUM NOPRINT; 9 DEFINE Camping/ANALYSIS SUM NOPRINT; 10 DEFINE Camping/COMPUTED ‘Camping/ and / Museum‘; 11 DEFINE Note/COMPUTED; 12 COMPUTE Facilities;/*Computing数值型变量*/ 13 Facilities=Museums.SUM+Camping.SUM;/*将统计量通过后缀形式附加在变量名后面即可*/ 14 ENDCOMP; 15 COMPUTE NOTE/CHAR LENGTH=10;/*Computing字符型变量时,在COMPUTE后面加上CHAR选项,LENGTH=选项默认是8*/ 16 IF Camping.SUM=0 THEN Note=‘No Camping‘; 17 ENDCOMP; 18 TITLE ‘Report with two computed variables‘; 19 RUN;
【SAS BASE】PROC REPORT,布布扣,bubuko.com
时间: 2024-10-12 03:23:12