前面我们已经简单介绍了统计描述指标的基础知识和PROC MEANS/PROC SUMMARY/PROC UNIVARIATE三个计算统计指标的SAS过程。今天我们继续介绍PROC FREQ过程和PROC TABULATE过程。 PROCFREQ过程可执行定性数据的描述性统计以及假设检验。PROC FREQ过程可产生从1维到n维的表格,即频数表以及列联表。本节内容主要介绍PROC FREQ过程执行描述性统计指标的计算,其语法如下: *===创建PROC FREQ过程使用的数据集; DATA FREQ; DO GROUP=1 TO 3; DO BLOOD=1 TO 4; INPUT F @@; OUTPUT; END; END; DATALINES; 60 47 61 21 42 30 34 13 51 40 45 16 ; RUN; *====PROC FREQ过程计算实际频数、理论频数和行百分比; *===程序1:打印结果; PROC FREQ DATA=FREQ; TABLES GROUP*BLOOD/PLOTS=FREQPLOT EXPECTED NOCOL NOPERCENT NOCUM; WEIGHT F; RUN; 图10-1 PROC FREQ列联表输出结果
*===程序2:输出结果到数据集RESULTS中; PROC FREQ DATA=FREQ; TABLES GROUP*BLOOD/OUT=RESULTS_FREQ OUTEXPECT OUTPCT; WEIGHT F; RUN; *===统计结果数据集输出; PROC EXPORT DATA=RESULTS_FREQ OUTFILE="E:\study file\Jindingtongji\SAS\RESULTS_FREQ.xls" DBMS=xls REPLACE; RUN; 图10-3 PROC FREQ过程输出数据集结果
PROCTABULATE过程以表格的形式呈现数据的各种描述统计指标,是常用的报表制作工具之一,可以制作出各种各样的简单或者高级复杂的表格。PROC TABULATE过程能计算描述性统计量,还可以计算各类报表中的特定统计指标,其语法如下:
*===导入数据集DATA; PROC IMPORT DATAFILE="E:\study file\Jindingtongji\SAS\ANA_DATA.CSV" OUT=DATA1 DBMS=CSV REPLACE; RUN; *===生成三维列联表; PROC TABULATE DATA=DATA1; CLASS GROUP GEN BMI_F; TABLE GROUP*GEN,BMI_F*(N ROWPCTN); RUN; 图10-4 PROC TABULATE生成的三维列联表 *===生成多变量的表格; PROC TABULATE DATA=DATA1; CLASS GEN; VAR HIGHT WEIGHT SYS DIA; TABLE (HIGHT WEIGHT SYS DIA)*GEN="",(N MEAN STD MEDIAN QRANGE); LABEL HIGHT="身高" WEIGHT="体重" SYS="收缩压" DIA="舒张压" GEN="性别"; KEYLABEL N="观测数" MEAN="均数" STD="标准差" MEDIAN="中位数" QRANGE="四分位数间距"; RUN; 图10-5 PROC TABULATE生成的多变量列表
*===生成三线表; PROC TABULATE DATA=DATA1 FORMCHAR="-----------" NOSEPS; CLASS GEN; VAR HIGHT WEIGHT SYS DIA; TABLE (HIGHT WEIGHT SYS DIA)*GEN="",(N MEAN STD MEDIAN QRANGE)/MISSTEXT="--" RTS=15; LABEL HIGHT="身高" WEIGHT="体重" SYS="收缩压" DIA="舒张压" GEN="性别"; KEYLABEL N="观测数" MEAN="均数" STD="标准差" MEDIAN="中位数" QRANGE="四分位数间距"; RUN; 图10-6 PROC TABULATE生成的三线表(输出窗口)
图10-7 PROC TABULATE生成三线表(ODS输出WORD) 小结:
(1)表10-1总结了PROC MEANS/PROC SUMMARY、PROC UNIVARIATE和PROC TABULATE过程计算的统计指标。 表10-1 SAS计算的描述性统计指标
(2)PROC TABULATE过程主要作用是制表,但是在制作表格前,理清思路、做好表格布局是非常重要的。 (3)PROC TABULATE过程输出在输出窗口和结果显示器的结果是不一样的,区别可见图1和图2。 (4)PROC FREQ过程是对定性数据的统计描述和统计推断,今天仅介绍了统计描述部分,产生列联表。统计推断部分将在后面详细介绍。 下一期的内容,我们将介绍PROC REPORT和ODS系统。参考文献: [1] 谷鸿秋. SAS编程演义[M]. 北京:清华大学出版社,2017. [2] 高惠璇. SAS系统Base SAS软件使用手册[M]. 北京:中国统计出版社,1997. [3] https://support./en/software/base-sas-support.html. [4] 夏庄坤, 徐唯, 潘红莲, 等. 深入解析SAS——数据处理、分析优化与商业应用[M]. 北京: 机械工业出版社,2014.
整理不易,欢迎点亮再看! 整理不易,欢迎点亮再看!
|