1 / 135

SAS — 统计分析系统 S tatistical A nalysis S ystem

SAS — 统计分析系统 S tatistical A nalysis S ystem. 公共卫生学院信息数据处理教学实验室. SAS 软件简介. 1966 年美国 North Carolina 大学的两位生物统计学研究生开始研制 SAS 系统,直至 1976 年成立了 SAS 软件研究所,正式推出了 SAS 软件, 1985 年推出微机版 SAS 。 SAS 是用于决策支持的大型集成信息系统,软件系统最早的功能限于统计分析,现在统计分析功能也仍是它的重要组成部分和核心功能。 SAS 现在的最新版本为 9.1 版,大小约为 1GB 。.

Download Presentation

SAS — 统计分析系统 S tatistical A nalysis S ystem

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SAS — 统计分析系统 Statistical Analysis System 公共卫生学院信息数据处理教学实验室

  2. SAS软件简介 1966年美国North Carolina大学的两位生物统计学研究生开始研制SAS系统,直至1976年成立了SAS软件研究所,正式推出了SAS软件,1985年推出微机版SAS。 SAS是用于决策支持的大型集成信息系统,软件系统最早的功能限于统计分析,现在统计分析功能也仍是它的重要组成部分和核心功能。SAS现在的最新版本为9.1版,大小约为1GB。

  3. 在数据处理和统计分析领域,SAS系统被誉为国际上的标准软件系统,并在96~97年度被评选为建立数据库的首选产品,堪称统计软件界的巨无霸。在数据处理和统计分析领域,SAS系统被誉为国际上的标准软件系统,并在96~97年度被评选为建立数据库的首选产品,堪称统计软件界的巨无霸。 经过多年的发展,SAS已经被全世界120多个国家和地区的近三万家机构所采用,直接用户超过三百万人,遍及金融、医药卫生、生产、运输、通讯、政府和教育科研等领域。  

  4. 由于SAS系统是从大型机上的系统发展而来,在设计上也是完全针对专业用户进行设计,因此操作以SAS语言编程为主,另外也有非编程方式的菜单系统,但人机对话的界面不太友好。由于SAS系统是从大型机上的系统发展而来,在设计上也是完全针对专业用户进行设计,因此操作以SAS语言编程为主,另外也有非编程方式的菜单系统,但人机对话的界面不太友好。 学习SAS软件时,需要用户有基本的统计学知识,对所选用的统计方法有较清楚的了解,没有统计学基础知识要掌握SAS软件较为困难。

  5. 第一节 SAS软件的使用基础 一、SAS的启动和退出 • 启动SAS • 双击桌面SAS图标 • 开始菜单  程序  The Sas System The Sas System for Windows V*.* • 直接双击SAS应用程序 • 退出SAS • 标题栏关闭按钮 • 菜单栏 File Exit • 在命令框键入“Bye”或“Endsas”

  6. 二、SAS的工作窗口 标题栏、菜单栏、命令框、工具栏 • 编辑器 程序编辑窗口 • 日志 运行过程日志窗口 • 输出 结果输出窗口 • 资源管理器/结果 SAS常用功能键

  7. 三、SAS程序构成 例:一组体检资料,包括姓名、性别、年龄、身高、体重,要求分性别计算身高、体重的均数、标准差、最大值、最小值。 姓名 性别 年龄 身高 体重 ZHANGLIN F 47 156.3 47.1 ZHAOHUA M 38 172.4 61.5 WANGQANG M 41 169.2 64.5 LIULI F 52 158.2 53.6 SHIDONG F 39 160.1 48.0 KONGYING M 29 174.1 64.6 LILING F 37 152.3 42.2 GUANFEN M 32 166.2 60.2 MIAOQING M 26 180.3 74.3 NIUHUA M 31 178.2 80.2 TANGJIE F 35 169.2 60.8 GAOJUN M 24 176.0 73.3 SUNHONG F 27 158.3 49.9

  8. DATA AA1; INPUT NAME$ SEX AGE HEIGHT WEIGHT; CARDS; ZHANGLIN 2 47 156.3 47.1 ZHAOHUA 1 38 172.4 61.5 WANGQANG 1 41 169.2 64.5 LIULI 2 52 158.2 53.6 SHIDONG 2 39 160.1 48.0 KONGYING 1 29 174.1 64.6 LILING 2 37 152.3 42.2 GUANFEN 1 32 166.2 60.2 MIAOQING 1 26 180.3 74.3 NIUHUA 1 31 178.2 80.2 TANGJIE 2 35 169.2 60.8 GAOJUN 2 24 176.0 73.3 SUNHONG 2 27 158.3 49.9 ; PROC MEANS; CLASS SEX; VAR HEIGHT WEIGHT; RUN; 数据步 过程步

  9. DATA STEP(数据步) 以DATA语句开始 将数据读入SAS系统,建立SAS数据集 • PROCEDURE STEP(过程步) 以PROC语句开始 调用各种已编好的过程处理和分析数据 • RUN(结束)整个程序的最后必须要有RUN语句结束,表示要执行以上全部任务。

  10. 四、SAS软件的常用操作 1. SAS程序编写规则 SAS程序编写只能在编辑窗口 • 语句书写格式自由,每个语句以“;”结束; • 可以在一行中写几个语句,或把一个语句写在几行中; • SAS语言不区分字母大小写,变量 A1=a1、PROC = proc、DATA AA=data aa 程序任何部位可以加注释语句(不执行语句): /* this is a small sample */

  11. 2. 运行SAS程序 • 工具栏提交按钮 • 功能键“F8”( 提交) • 菜单栏 运行 提交 • 命令框键入“Submit”命令 自动激活“输出”窗口,出现程序运行结果

  12. 3. 调试SAS程序 没出现结果窗口,或结果不理想时。 • 激活日志窗口(F6) 查看运行过程及出错信息 • 黑色文字:源程序 • 蓝色文字:程序运行情况说明信息 • 红色文字:出错信息 • 绿色文字:警告信息 • 激活编辑窗口(F5) • 修改错误后重新发送

  13. 4. 保存SAS各窗口的内容 激活相应窗口 • 常用工具栏 存盘按钮 • 菜单栏 文件 保存(另存为) • 命令框输入File命令 可以分别保存程序、运行结果、日志

  14. 5. 打开已保存的程序、结果等 只能在编辑窗口 • 常用工具栏 打开按钮 • 菜单栏 文件 打开 • 命令框输入Include命令 可打开以前保存的程序、运行结果、日志等文件及其他文本格式的文件。

  15. 五、SAS编程基础 1. SAS的操作符 • 算术操作符: 加 +、减 -、乘 *、除/、乘方 ** • 比较操作符: 等于 EQ或 =、大于 GT或 >、 小于 LT或 <、不等于 NE或 ^=、 大于等于 GE或 >=、小于等于 LE或 <= • 逻辑操作符: AND 或&、 OR 或│、 NOT 或^

  16. 2. 常用SAS函数: LOG(x) 以e为底的自然对数 LOG10(x) 以10为底的常用对数 EXP(x) 以e为底的反对数 SQRT(x) 平方根 ABS(x) 绝对值 INT(x) 取整数(不四舍五入) ROUND(x) 取整数(四舍五入) MOD(x,y) 取x/y的余数 SIN(x) 正弦 COS(x) 余弦 三角函数(x是弧度) TAN(x) 正切

  17. 3. SAS表达式 用来赋值新的变量、转换变量、计算结果、建立条件表达式等,如: 赋值变量 Y=100 转换变量 X2=LOG(X1) 计算结果 Y=35.12+X1*2.58/100 条件表达式 G=(AGE<65)、Y=(X1=X2)、 AGE<15 OR AGE>64 SEX=1 AND AGE<60

  18. 4.使用 OPTIONS语句定义输出页面格式 options linesize (LS)=80 每行80个字符 pagesize (PS) =54 每页54行 nodate 不要打印日期 nocenter 不要居中 Options ls=132 ps=1000 nodate nocenter; Option语句可以放程序的任何位置,常放在程序开始

  19. 第二节 SAS数据集 SAS数据集(SAS Dataset) 数据值被安排在一个矩阵式的表格结构中 每一行数据表示一个观测(Observation) 每一列数据表示一个变量(Variable) • 变量命名:1~8个字符,第1个字符必须是 字母,后面可以是字母、数字和下划线 • 变量类型:数值型、字符型 字符型变量名后加“$”表示, 变量缺失值:用“.”表示

  20. 一、SAS数据集的种类 • 临时SAS数据集 不保存,一旦退出SAS就消失。 数据集名称为1个单词,如DATA AA; • 永久SAS数据集 保存在用户指定的文件夹里。 数据集名称为2个单词,中间用“.”分开,也称二级名,如DATA NEW.AA;

  21. SAS永久数据集 LIBNAMENEW ‘D:\MY DATA’; 建库标记 DATA NEW.AA; 命名永久数据集 在数据集的二级名称 NEW.AA中; • 第1个词NEW是库标记,代表用户指定的保存SAS数据文件的位置,前面要用LIBNAME语句指定它代表的文件夹或位置。 • 第2个词AA是保存的SAS数据集的文件名。 执行这个过程的结果将会在D:\MY DATA文件夹中产生1个SAS永久数据文件 AA.sas7bdat sas7bdat是自动产生的SAS数据文件默认扩展名

  22. 二、创建SAS数据集 1.在编辑窗口创建数据集 DATA AA;命名将要创建的数据集名 INPUT X1-X4; 描述数据集中的变量名 CARDS;以下开始是数据 2 47 156.3 47.1 1 38 172.4 61.5 …… ; 数据结束 INPUT X Y@@;   连续读数据不换行 INPUT NAME$ AGE; 字符型变量名加$

  23. 2.在表编辑器窗口创建数据集 菜单栏 工具 表编辑器 打开表编辑器窗口直接输入数据 保存数据:文件 保存(另存为) 在左边逻辑库框中选择1个逻辑库 在下边成员名框中键入数据集名称 • 建立临时数据集时,选择逻辑库 work, • 选择用户创建的库标记,即建立永久数据集 • 工具栏 创建新逻辑库 可创建新的库标记

  24. 3.用分析家模块创建数据集 菜单栏 解决方案 分析 分析家 打开分析家窗口直接输入数据 保存数据:文件 保存(另存为) 在左边逻辑库框中选择1个逻辑库 在下边成员名框中键入数据集名称 • 建立临时数据集时,选择逻辑库 work, • 选择用户创建的库标记,即建立永久数据集 • 工具栏 创建新逻辑库 可创建新的库标记

  25. 4.由其它类型数据文件转换成SAS数据集 菜单栏 文件 导入数据SAS可以直接与下列格式文件互相转换 • Microsoft Excel 97/2000/2002 File (*.xls) • Microsoft Access 97/2000/2002 Database • dBASE/FoxBASE File (*.dbf) • Lotus 1/3/4 File (*.wk1/3/4) • Delimited File (*.*) 空格分隔 • Tab Delimited File (*.txt) 制表符分隔 • Comma Separated Velues(*.csv)逗号分隔

  26. 另外: 在写字板、记事簿、Word 或 Excel 中的数据也可以直接采用复制、粘贴的方式,通过编辑窗口创建SAS数据集。 通过 菜单栏 文件 导出数据 也可以把SAS数据集转换成相应的其它类型数据文件

  27. 5 .从原有的SAS数据集中创建数据子集 DATA A1(子集);SET AA(原数据集); (1)从SAS永久数据集中读取数据 LIBNAME NEW ‘D:\MY DATA’;建库标记 DATA A1; 命名将要创建的数据子集名 SET NEW.PP7;从D:\MY DATA\ 文件夹中原有的SAS永久数据文件PP7.SD2中读数据

  28. (2)选择部分变量(列) • 保留部分变量:KEEP DATA A1;SET AA;KEEP X1 X2; • 去掉部分变量:DROP DATA A1;SET AA;DROP X3 X4; • 赋值新的变量 Y=X3+X4; LY=LOG(Y);

  29. (3) 选择部分观测(行) 建子集语句:IF DATA A1;SET AA;IF SEX=1; DATA A1;SET AA;IF AGE>40; IF X1^=3 (不等于) IF SEX=1 AND AGE>60 IF AGE>20 AND AGE<=40 IF AGE<21 OR AGE>40

  30. (4) 数据集连接 • 纵向连接A1 DATA AA;SET A1 A2; A2 要求 A1和 A2中的变量相同 A1中有10行,A2中有15行,则AA有25行。 • 横向合并A1 A2 DATA AA;MERGE A1 A2; BY Num; 匹配合并时,要求 A1和 A2中必须有1个相同的变量,且排列顺序也相同,作为标识变量用 BY 语句指定。

  31. (5)数据集转置(行列互换) PROC TRANSPOSE;BY G;VAR X1-X3; OBS X1 X2 X3 • 1 2 3 • 4 5 6 • 7 8 9 • 10 11 12 OBS _Name_ Col1 Col2 Col3 Col4 • X11 47 10 • X2 2 58 11 • X3369 12 选择项有: OUT=新数据集名(缺省按DATA n自动命名) PREFIX=新变量名前缀(缺省按Col n自动命名) NAME=为原变量名列命名(缺省自动命名为_Name_)

  32. 第三节 统计描述 一、定量资料的统计描述 • 简单描述:MEANS过程 输出样本量、均值、标准偏差、最小值、最大值 ( N、Mean、Std Dev、Minimum、Maximum) • 详细描述:UNIVARIATE过程 输出更多指标:样本量、均数、标准差、最小值、最大值、方差、标准误 、中位数、四分位数间距、常用百分位数、众数、平方和、离均差平方和等,可以作正态性检验 另外还显示原数据中的部分极端值

  33. 简单描述MEANS过程 PROC MEANS; CLASS SEX; VAR HEIGHT WEIGHT; RUN; CLASS指定分组变量(不需分组时可省略) VAR 指定需要分析的变量(不写即分析全部变量) MEANS过程后不加任何选项时,自动输出5项结果: N、均值、标准偏差、最小值、最大值 可加的选项有:标准误(StdErr)、方差(Var)、总和(Sum)、平方和(USS)、离均差平方和(CSS)、全距(Range)、变异系数(CV)、偏度系数(Skewness)、峰度系数(Kurtosis)、可信区间(CLM)、中位数(Median)、常用百分位数(P1, P5,P10,P25,…,P95)、四分位数(Q1,Q3)、t 检验(t、Prt)等 MAXDEC=n指定计算结果保留小数位数(默认7位)

  34. 频数表资料: DATA AA2; INPUT X F@@; CARDS; 2.5 5 2.7 10 2.9 12 3.1 23 3.3 24 3.5 22 3.7 17 3.9 7 4.1 3 ; PROC MEANS N MEAN STD STDERR CLM ; VAR X;FREQ F;RUN; 数据步中:X 是组中值,F是频数 过程步中:VAR X;指定分析变量是 X FREQ F;指定 F 是频数

  35. DATA AA3; INPUT X F@@; Y=LOG10(X); CARDS; 4 1 8 5 16 6 32 2 64 7 128 10 256 4 512 5 ; PROC MEANS; VAR Y; FREQ F; OUTPUT OUT=C MEAN=M; ① DATA B2; SETC ; G=10**M; ② PROC PRINT; VAR G;RUN; ③ ①输出临时数据集C,变量M=均数, ②新建数据集B2,取自数据集C, 对变量 M 求反对数 G=10M ③输出过程步,输出几何均数 G 计算几何均数

  36. 详细描述UNIVARIATE过程 PROC SORT; BY SEX; PROC UNIVARIATE; BY SEX; VAR HEIGHT WEIGHT; RUN; BY指定分组变量(不需分组时可省略) SORT用BY之前必须先按分组变量排序 加选项 NORMAL可以作正态性检验 加选项 PLOT作茎叶图、箱式图、P-P图 加 QQPLOT语句 作Q-Q图 加 HISTOGRAM语句作直方图 在已知资料不服从正态分布时或对资料的分布类型不确定时可以用UNIVARIATE过程作探索性分析。

  37. 详细描述结果(1) 矩 N 24 权重总和 24 均值 1.2846 观测总和ΣX 30.83 标准偏差 0.4687 方差 0.2196 偏度 0.1060 峰度 -0.9930 未校平方和ΣX2 44.6555 校正平方和 5.0518 变异系数 36.4835 标准误差均值 0.0957 基本统计测度 位置 变异性 均值 1.284583 标准偏差 0.46866 中位数 1.270000 方差 0.21964 众数 1.200000 极差 1.57000 四分位极差 0.79000

  38. 详细描述结果(2) 位置检验: Mu0=0 检验 --统计量--- -------P 值------- t 检验 学生 t t 13.4279 Pr > |t| <.0001 符号检验 符号 M 12 Pr >= |M| <.0001 符号秩和检验 符号秩 S 150 Pr >= |S| <.0001 分位数(定义 5) 分位数 估计值 100% 最大值 2.110 99% 2.110 95% 2.070 90% 1.870 75% Q3 1.615 50% 中位数 1.270 分位数 估计值 25% Q1 0.825 10% 0.640 5% 0.640 1% 0.540 0% 最小值 0.540

  39. 极值观测 ----最小值---- ----最大值---- 值 观测 值 观测 0.54 12 1.80 8 0.64 14 1.87 9 0.64 13 1.87 24 0.75 15 2.07 10 0.76 16 2.11 11

  40. Normal选项结果 正态性检验 检验 ----统计量---- ------P值------ Shapiro-Wilk W 0.962132 Pr < W <0.0001 Kolmogorov-Smirnov D 0.115212 Pr > D <0.0100 Cramer-von Mises W-Sq 0.284376 Pr > W-Sq <0.0050 Anderson-Darling A-Sq 1.704837 Pr > A-Sq <0.0050 小样本(n≤50)时用W法,样本量50<n<1000时用D法

  41. PLOT选项结果 茎叶图 盒式图 茎 叶 # 盒式图 90 0 1 0 88 000 3 0 86 00 2 | 84 00 2 | 82 000 3 | 80 0000 4 | 78 0000000000000000 16 | 76 0000000000000000 16 | 74 00000000 8 +-----+ 72 000000000000000 15 | | 70 00000000000000000000000000000 29 *--+--* 68 00000000000000000000000000 26 | | 66 000000000000000000000 21 +-----+ 64 000000000000000 15 | 62 00000000000000 14 | 60 0000000000000000 16 |

  42. 正态概率分布图(Normal Probability Plot) 91+ * | ** | ** ++ 85+ * +++ | **+++ | **++ 79+ ***** | ****+ | **+ 73+ *** | **** | **** 67+ **** | **** | ***** 61+** ***** ***+ +----+----+----+ ---+----+----+----+----+----+----+ -2 -1 0 +1 +2

  43. 二、定性资料统计描述 FREQ 过程 可以产生频数表和 n 维列联表 PROC FREQ;TABLES A ;RUN; TABLES 指定要分析的定性变量 TABLES A 产生一维频数表 TABLES A*B 产生二维列联表(A是行B是列) TABLES A*B*C 产生三维列联表 (A是分层,B是行,C是列) TABLES A*(B C) 产生A*B、A*C两个二维表 TABLES X1-X3 产生X1、X2、X3三个一维表 TABLES (X1-X4)*Y 产生X1*Y X2*Y X3*Y X4*Y 四个二维表

  44. 如描述以下三个定性变量(258人) A文化程度(1=文盲2=初中以下3=高中4=大学) B工作强度(1=轻 2=中 3=重) C月收入 (1=<300 2=300- 3=500- 4=1000-) DATA AA4; INPUT A B C@@; CARDS; 3 2 3 4 1 4 4 1 3…… ; PROC FREQ; TABLES A B C; PROC FREQ; TABLES A*B; PROC FREQ; TABLES A*B*C; PROC FREQ; TABLES A*(B C); RUN;

  45. 一维频数表结果 变量名 A 频数 百分比 累计频数 累计百分比 2 78 30.2 78 30.2 3 85 32.9 163 63.2 4 95 36.8 258 100.0

  46. 二维频数表结果 B (行变量名) C(列变量名) 频数| 百分比 | 行百分比| 列百分比| 1 | 2 | 3 | 4 | 合计 ---------+--------+---------+---------+--------+ 1 | 0 | 6 | 37 | 26 | 69 | 0.00 | 6.32 | 38.95 | 27.37 | 72.63 | 0.00 | 8.70 | 53.62 | 37.68 | | . | 75.00 | 67.27 | 81.25 | ---------+--------+---------+---------+--------+ 2 | 0 | 2 | 18 | 6 | 26 | 0.00 | 2.11 | 18.95 | 6.32 | 27.37 | 0.00 | 7.69 | 69.23 | 23.08 | | . | 25.00 | 32.73 | 18.75 | ---------+--------+---------+---------+--------+ 合计  0 8 55 32 95 0.00 8.42 57.89 33.68 100.00

  47. 三、定量资料作频数表 • 先用MEANS过程找出最大值和最小值 MIN=2.5 MAX=5.71 计算全距=3.21 • 确定组距 I,如 I=全距/10≈0.3 • 然后在数据步中赋值新的变量: Y=INT( X/ I )*I • 用FREQ过程作频数表: DATA AA; SET AA5; Y=INT(X/0.3)*0.3; PROC FREQ; TABLES Y; RUN;

  48. 定量资料作直方图 PROC GCHART; VBAR X/LEVELS=11 SPACE=0 ; RUN; GCHART过程作图 VBAR作纵向条图 ; HBAR作横向条图 常用选项有: LEVELS分组的数目 WIDTH指定竖条的宽度,以字符宽度为单位 SPACE指定竖条之间的距离,直方图=0 MIDPOINTS=2.55 TO 5.85 BY 0.3指定组中值

  49. 第四节 定量资料假设检验(1)t 检验 一、样本均数与总体均数比较 以往新生儿出生体重平均为3000g,某医院对产妇开展孕期保健指导后,测得15名新生儿出生体重如下,问开展孕期保健指导后对新生儿体重是否有影响? 2800 3400 2900 2750 3000 3100 4600 3900 2350 3500 2600 3700 3800 2950 3200

  50. 样本均数与总体均数比较用MEANS过程 DATA AA6; INPUT X@@; Y=X-3000; CARDS; 2800 3400 2900 2750 3000 3100 4600 3900 2350 3500 2600 3700 3800 2950 3200 ; PROC MEANS MEAN STD STDERR T PRT; VAR Y; RUN; 结果 均值 标准偏差 标准误差 t值 Prob>|t| 236.67 586.60 151.46 1.56 0.1405 P>0.05,不拒绝H0,尚不能认为开展孕期保健指导对新生儿体重有影响 。

More Related