kl800.com省心范文网

SAS统计分析软件简介_图文

SAS统计分析软件简介
Statistics Analysis System

提纲
? SAS软件简介 ?

完全随机试验SAS分析

?
?

随机区组试验SAS分析
系统分组试验SAS分析

?

一元线性回归与相关SAS分析

2.1 SAS软件简介
? SAS系统全称为Statistics

Analysis System。

? SAS系统最早由美国北卡罗来纳州立大学的两

位生物统计学研究生编制,并于1976年成立了 SAS软件研究所,正式推出SAS软件。
? SAS现在的最新版本为9.1版,根据不同的安装

方式,所占硬盘空间大约为1-2G。
? 目前应用比较广泛的版本还有6.12版和8.2版。

SAS软件使用情况
?

? ?

SAS是美国SAS软件研究所研制的一套大型集成应用 软件系统,具有完备的数据存取、数据管理、数据分 析和数据展现功能。 目前SAS被广泛应用于政府行政管理、科研、教育、 生产和金融等不同领域,发挥着重要的作用。 尤其是创业产品—统计分析系统部分,由于其具有强 大的数据分析能力,一直为业界著名软件,在数据处 理和统计分析领域,被誉为国际上的标准软件和最权 威的优秀统计软件包。

SAS的模块化结构
? ?

?

SAS系统是一个组合软件系统,它一共由50个左 右的功能模块组合而成。 SAS的基本部分是SAS/BASE模块,该模块是 SAS系统的核心,承担着主要的数据管理任务, 并管理SAS的用户使用环境,进行用户语言的处 理,调用其它SAS模块和产品。 在SAS/BASE的基础上,用户还可以增加各种模 块而增加不同的功能,如SAS/STAT(统计分析 模块)、SAS/GRAPH(绘图模块)、SAS/OR (运筹学模块)、SAS/IML(交互式矩阵程序设 计语言模块)等。

2.2 SAS软件特点
? ? ?

? ? ? ?

?

统计分析方法丰富,每个过程均含有极丰富的任选项,灵活可调, 适用性广 对数据可连续处理,实现更为复杂的统计分析 语言编程能力强-----函数多(各类概率分析函数、分位数函数、样 本统计函数和随机数生成函数),使用户能方便地实现特殊统计要 求,语言近乎自然英语 信息存储简单 强大的报表输出功能 有适用各种计算机(PC、工作站和大型计算机)和操作系统 (Windows, Unix)的版本,应用条件不受限制 缺点:通常需编写一段引导程序。在设计上也是完全针对专业用 户进行设计,因此其操作至今仍以编程为主,人机对话界面不太 友好,并且在编程操作时需要用户最好对所使用的统计方法有较 清楚的了解,非统计专业人员掌握起来较为困难。 SAS极为高昂的价格和只租不卖的销售策略使得实力不足的个人 和机构只能对他望而却步。

2.3 SAS软件使用——用户界面

点击”Run”下拉菜单中”Submit”按钮 功能:提交运行程序

数据录入语句
例3-3-2资料 过程步程序

数据录入:Editor窗口

结果显示:output窗口

2.4 SAS基本语句——
程序的编写、 运行、 保存、 调用和修改
2.4.1 建立数据集的方式: (1)直接建立( editor )格式:
?

DATA

表示一数据集的开始,定义数据集名。选项(drop=/ keep=/

rename=)
? ?

Input Cards

给出变量表,类型,及读入方式 (或Datalines) 表示数据块的开始,数据之间至少有一空格相

隔 , 缺失数据必须用点 “.” 表示,否则会造成读数混乱 ;
? ? ?

; Run

数据块结束(必须另占一行) 表示数据步结束

数据输入方式有列表输入,格式输入,列输入和指针控制等。

2)利用Table editor建立数据集
选择工具条Tools→Table editor进入界面,定义变量,输入数据

(3)利用已有work数据集建立新数据 集 ? 已有SAS work(或当前盘上的)数据集的读入与存储——SET语句的
应用
Data read_sasdat; set sasdat4_1;run;

proc print data = read_sasdat; run;
?

SAS work数据集只是暂时地保存着,如果退出SAS 它将会消失。为永 久保存和以后的分析利用,需要进行保存。

?

SAS数据集的保存-------- Libname语句的应用
libname sav 'd:\data_manage'; data sav.dat6 或者:Data 'd:\china\dat6_1';

set sasdat4_1;run;

(4)利用外部(纯文本文件)已存在数据文件

Infile语句的应用 Data in_txt; Infile 'F:\jisuanji\data_manage\wages.txt'; Input name$ sex$ y z; Run; proc print data= in_txt; run;
?

2.4.2 外部数据文件与SAS数据集的转换
2.1 文本文件与SAS文件互相转换 (以TAB间隔数据) Proc import out = work.txt_imp /* 定义新建数据集的类型和名称 */ Datafile=”f:\data_manage\text.txt” /* 指出原文件名存放位置,类型和名称
*/

Dbms= tab replace; Getnames=yes; Datarow=2; Run; proc print data = txt_imp; run;

/* 指出被转换文本文件数据以tab 间隔 */

/* 是否显示源文件中列名称 */
/* 指定数据从第二行开始 */

Proc export data = work.txt_imp outfile=”f:\data_manage\text_z.txt” Dbms= tab replace; Run;

/* 定义被转换的数据SAS集名称 */ /* 指出输出文件名和存放位置 */ /* 指出文本文件数据以tab 间隔 */

2.4.2 外部数据文件与SAS数据集的转换
2.2 文本文件与SAS文件互相转换 (以空格间隔数据) Proc import out = work.txt_imp /* 定义新建数据集的类型和名称 */ Datafile=”f:\data_manage\text_kg.txt” /* 指出原文件名存放位置,类型和名称 */ Dbms= DIM replace; /* 指出变量之间以空格 间隔 */ delimiter=‘ ’; /* 指出被转换数据之间以空格间隔及数目 */ Getnames=yes; /* 是否显示源文件中列名称 */ Datarow =2; /* 指定数据从第二行开始 */ Run; proc print data = txt_imp; run; -- 被输入的数据文件必须关闭 --定义空格须与文件中实际空格数一致 --变量名需是英文字母 --多数情况下可省去Getnames, Datarow=2; Proc export data = work.txt_imp /* 定义被转换的数据SAS集名称 */ outfile=”f:\data_manage\text_y.txt” /* 指出输出文件名和存放位置 */ Dbms= DIM replace; /* 指出文本文件变量以空格 间隔 */ delimiter=‘ ’; /* 指出被转换数据之间以空格 间隔 及空格数*/ Run;

2.4.2 外部数据文件与SAS数据集的转换
2.3 Excel文件与SAS文件转换
Proc import out = work.xls_imp /* 定义新建数据集类型与名称 */ /* 指出原文件名,类型和存放

Datafile=”f:\data_manage\student.xls”

位置 */
Dbms=excel replace; Getnames=yes; /* 指出被转换文件的格式 */ /* 是否显示源文件中列名称 */

Run;
proc print data = xls_imp; run;

2.4.3 基本过程步语句
? ?

?
? ? ? ? ?

?
? ?

Proc print data=s; Proc means data=s; class sex;var score; PROC SUMMARY PRINT; VAR y;RUN; PROC UNIVARIATE [FREQ] [PLOT] [NORMAL];RUN; proc ttest data=new H0=34;var x;run; Proc means n mean std stderr t prt; Run; proc anova; class a;model yield=a;means /Duncan;run; proc glm;class a;model yield=a;means a/Duncan;lsmeans a/pdiff e;run; proc mixed proc corr; var x y; Proc reg选项;Model 依变量=自变量/选项;Weight 变 量;Print 选项;Plot y轴变量*x轴变量;

2.5 举例 2.5.1 完全随机试验数据的方差分析
药剂A
A1(ck) A2 A3 A4 19 21 20 22 23 24 18 25

苗高xij
21 27 19 27 13 20 15 22

SAS语句: data riceXsolution; do sol=1 to 4; do plant=1 to 4; input height @@; output; end; end; cards; 19 23 21 13 21 24 27 20 20 18 19 15 22 25 27 22 ; proc anova; class sol; model height = sol; run;

蔬菜品种 盆号
A11 0.7 0.6
砷含量 xijk /(0.1mg/kg)

A1 A12 0.9 0.9 0.7 1.1 0.7 A13 0.8 0.6 0.9 1.0 0.8 A21 1.2 1.4 1.6 1.2 1.5

A2 A22 1.1 0.9 1.3 1.2 1.0 A23 1.5 1.4 0.9 1.3 1.6 A31 0.6 0.6 0.8 0.9 0.7

A3 A32 0.5 0.8 0.9 1.0 0.6 A33 0.6 1.2 0.8 0.9 1.0 A41 4.2 3.7 2.9 3.5 3.6

A4 A42 2.9 3.5 3.8 3.1 3.5 A43 3.6 3.5 4.0 3.3 3.7

0.9 0.5 0.6

2.5.2

系 统 分 组 资 料

SAS程序: data shucai; do i=1 to 5; do trt="A1", "A2", "A3", "A4"; do pot=1 to 3; input y@@; output; end; end; end; cards; /按课本例3-2-5数据格式输入!/
;

proc anova; class trt pot i; model y= trt pot(trt); test H=trt e=pot(trt); means trt/Duncan e=pot(trt); run;

2.5.3 一元线性回归
表4-1-1 浓度xi(mol/l)与吸附率y(%)的数据
SAS 程序: data Nx; input x y1 y2@@; y=(y1+y2)/2; cards;
49.0 49.3 49.5 49.8 50.0 50.2 ; 16.6 16.8 16.8 16.9 17.0 17.0 16.7 16.8 16.9 17.0 17.1 17.1

i
1 2 3

xi
49.0 49.3 49.5

yi1
16.6 16.8 16.8

yi2
16.7 16.8 16.9

4
5 6

49.8
50.0 50.2

16.9
17.0 17.0

17.0
17.1 17.1

run; proc print; run; proc reg; model x=y; plot x*y /conf95; run;