SAS简单介绍资料课件_第1页
SAS简单介绍资料课件_第2页
SAS简单介绍资料课件_第3页
SAS简单介绍资料课件_第4页
SAS简单介绍资料课件_第5页
已阅读5页,还剩122页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

SAS菜单系统StatisticalAnalysisSystem1第1章SAS基本介绍2

SAS和SPSS(StatisticalPackageforSocialScience,社会科学统计软件包)、BMDP(BiomedicalPrograms,生物医学程序)并称为国际上最有知名度的三大统计软件。

SAS是“统计分析系统”(StatisticalAnalysisSystem)的缩写。该系统于1964年由美国北卡州立大学开发,1976年成立公司。该系统最初是以统计分析和线性数学模型为主,至今已成为功能强大的模块化、集成化的应用软件系统,包括30多个模块,广泛应用于统计学、运筹学、质量控制、矩阵计算等,是国际上公认的最权威的统计软件。

3SAS官方网站:http://SAS下载网址:http:///SAS学习交流网址:1.人大经济论坛:http:///bbs/2./stat/seminars/3.中文论坛:http:///forum/4数据访问—访问多种形式和来源的数据数据管理—将数据转变为可用形式数据呈现—以文字、图形和表格的形式展现

数据信息数据分析—获取有意义的信息四大任务5

SAS系统是一个可由几个到二、三十个工具模块及面向行业的子系统组成的可伸缩系统.

模块按功能可分为四类:数据库部分:BaseSAS,FSP,ACCESS…分析核心:STAT,ETS,QC,OR,INSIGHT…开发呈现工具:AF,EIS,GRAPH,…分布处理与数据仓库:CONNECT,WA…模块简介6SAS/STAT(统计分析模块):回归分析、方差分析、属性数据分析、多变量分析、判别和聚类分析、残存分析、心理测验分析和非参数分析等8类40多个过程。①SAS数据库部分:其模块为SAS/BASE。它也是其它模块的基础,即其它模块是建立在其基础之上的。②SAS分析核心:这一部分包括了许多模块:7SAS/ETS(经济预测或时间序列分析模块):如实用预测(逐步回归、指数平滑等)序列相关校正回归、分布滞后回归、ARIMA模型、状态空间方法、谱分析和互谱分析等。SAS/OR(运筹学和工程管理模块):可进行线性和非线性规划,还包括项目管理,时间安排和资源分配等问题的一整套方法。SAS/QC:质量控制和试验设计模块。SAS/INSIGHT:可视化数据探索工具模块。SAS/IML:

交互式矩阵程序设计语言模块。8③SAS开发及呈现工具:SAS/AF:应用开发工具.采用面向对象的技术,开发用户自己的图形用户界面(GUI)的应用系统;SAS/EIS:行政管理系统或个人的信息系统;SAS/GRAPH:图形软件包;SAS/GIS:集地理信息系统功能与空间数据的显示分析于一体的软件。9SAS/ACCESS:与外部数据库文件的接口模块。SAS/CONNECT:在网络环境下,使各平台上的SAS系统建立内在联系模块.实现分布处理,从而有效地利用各平台数据和机器资源;SAS/SHARE:实行SAS系统中数据库的并发控制的模块.④SAS对分布处理模式的支持及其数据仓库设计:10

启动SAS双击桌面SAS图标

退出SAS标题栏关闭按钮菜单栏FileExit在命令框键入“Bye”或“Endsas”开始菜单程序TheSASSystemTheSASSystemforWindowsV8(或9.0)SAS的启动和退出

11命令窗口菜单栏工具栏LOG窗口程序编辑窗口状态栏结果窗口资源管理器输出窗口SAS的工作窗口12编写SAS程序:在ProgramEdit程序编辑窗口输入源程序根据题意编写程序程序编辑窗口例:有一批体检数据,包括受检者的姓名、性别、年龄、身高、体重信息。要求按性别分别计算身高、体重的描述性统计量:均值、标准差、最大值、最小值。1314DATA步程序步15程序说明每行为一个观测数据,数据间无分号,数据最后以“;”开头的空行结束数据步:将数据读入系统,建立数据集。以DATA语句开始

INPUT语句描述数据变量,用$表示变量是字符型

CARDS语句指示后面是数据16过程步:对数据集中数据进行分析、处理。以PROC语句开始,调用SAS标准过程。每个语句都以“;”结束。整个程序最后要有RUN语句17SAS程序的书写格式不分大小写;

单个名称中不能空格,不同名称间必须空格;一行可写多条语句,用分号分割;一条语句可写多行;数据行后不加分号,数据最后单独加一分号行;程序用RUN;语句结束.18运行SAS程序方式一:鼠标点击提交按钮方式二:按功能键“F8”方式三:执行菜单命令【Run】→【Submit】方式四:在命令框输入SUBMIT命令并执行19查看结果激活OUTPUT窗口(F7)注意:没有正确结果,可能是:程序语法错误:→查看日志窗口错误信息程序逻辑错误:→分析源程序没有调用能输出结果的过程输出窗口20查看运行过程及出错信息激活LOG窗口(F6)黑色文字:源程序及运行情况蓝色文字:程序运行情况的说明信息红色文字:出错信息绿色文字:警告信息LOG窗口21SAS/ANALYSIS下的十四个模块22(1)3DVisualAnalysis

三维直观分析(2)

Analyst(STAT-AnalystApplication)

分析员应用系统,可以完成输入数据及统计分析全过程(3)DesignofExperiments

实验设计(ADX)—打开ADX模块,可进行各种试验设计包括响应面设计与分析等.(4)EnterpriseMiner

项目管理(5)GeographicInformationSystem

进入Libraries(map,work等)23(6)GuidedDataAnalysis

向导式数据分析--打开SAS/LAB模块,可以执行回归、方差分析等标准的分析并对结果进行解释(7)InteractiveDataAnalysis(SAS/INSIGHT系统)探索性数据分析—打开SAS/INSIGHT模块,这里提供多种图纸显示,可以执行变量的分布、相关、主成份、广义线性模型等分析

(8)InvestmentAnalysis

投资分析(9)MarketResearch

市场调查24

(10)ProjectManagement

计划安排--打开PROJMAN模块(11)QualityImprovement

统计质量控制--打开SQC模块,提供了不需编程的质量管理图表和分析(12)

QueueingSimulation

功能图标

(13)TimeSeriesForecastingSystem

时间序列分析--打开Forecasting模块,用于时间序列分析模型,可以自动建模和预测(14)TimeSeriesViewer

时间序列浏览器25选择:方式一:鼠标点击“存盘”工具按钮方式二:执行菜单命令【File】→【Save】/【Saveas】保存SAS程序及其他窗口内容可保存程序、数据文件、运行结果、日志等。26第2章

SAS基本概念2728一.SAS数据集SAS数据集:主要用于存放数据文件。它一般由描述部分和数据部分组成,也有一些数据集包含索引部分。数据部分是存放数据的地方,它组织成一张二维表,其列表示变量,行表示观测。描述部分说明了数据集的一般信息,如数据集的名字和成员类型;建立的日期和时间;观测数以及变量个数、属性等。29SAS数据集:数据部分是存放数据的地方,它组织成一张二维表,其列表示变量,行表示观测。观测变量30观测(Observation)

描述被观测对象的单一整体(如一个人、一个实验动物等)某些所研究特性的一系列数据值称为一个观测,又称观察。在SAS数据集中每一行数据是一个观测。变量(Variable)

变量指定了数据的某一特性。在SAS数据集中,每一个观测是由各个变量的数据值组成。在数据集中每一列数据是一个变量。31(1)每个数据集都必须有一个名字。在SAS系统中,数据集的名字由英文字母、数字、下划线组成,第一个字符必须是字母或下划线,名字最多只能有32个字符。(2)另外在命名时不区分大小写,所以math和MATH被系统认为是一个名称。数据集的命名SAS数据集的引用:库名.数据集名圆点连接符32

建立新的SAS数据集方法一:用数据步输入例:有一批体检数据,包括受检者的姓名、性别、年龄、身高、体重信息。要求用数据步把下列数据输入到SAS数据集。3334dataA;inputname$sex$ageheightweight;cards;zhanglinF47156.347.1zhaohuaM38172.461.5wangqangM41169.264.5liuliF52158.253.6shidongF39160.148.0sunhongF27158.349.9donglinF33162.451.6tonglingM34170.458.9;run;35菜单栏—Solutions—assist在命令栏输入assist方法二:使用viewtable

格式建立数据集方法三:使用SASAssist建立数据集数据库—单击鼠标右键—新建—表(table)数据库—工具栏新建图标—表(table)数据库—文件—新建—表(table)36对于小量的数据,用CARDS语句和INPUT语句输入数据。

对于大量的数据,可以把原始数据放在一个普通的文本格式的文件中,然后用INFILE语句指定输入文件名。

读入外部数据

1.文本格式的数据文件格式:

dataSAS数据集名;

infile‘文件存储路径’选项;

input变量名〈格式〉;

run;37例如:data

mysas.steelmaking;

infile'H:\sasprocedures\steelmaking.txt';inputsteel;/*变量名*/ run;注:使用Infile语句时,必须建立两个文件,一个是纯命令文件(如上例),另一个是纯数据文件(如下例)例:11001116031011100211654102…382.微机格式的数据文件利用文件导入向导

file菜单下点击importdata39SAS可以直接与下列格式文件互相转换:MicrosoftExcel97/2000/2002File(*.xls)MicrosoftAccess97/2000/2002DatabasedBASE/FoxBASEFile(*.dbf)Lotus1/3/4File(*.wk1/3/4)DelimitedFile(*.*)空格分隔TabDelimitedFile(*.txt)制表符分隔CommaSeparatedVelues(*.csv)逗号分隔40VIEWTABLE模式是输入数据、编辑数据比较方便的一个界面二.用VIEWTABLE界面管理数据41在VIEWTABLE窗口中可以浏览、编辑或生成数据集。VIEWTABLE提供两种查看模式:用TableView(表格视图)可以按行列方式同时显示表中的多行,FormView(表单视图)用一个表单形式一次显示表中的一行。你可以定制表的样子,比如对数据排序,改变某列的颜色和字体,显示列标签而不是列名,删除或添加列。VIEWTABLE简介42生成新数据集43浏览与修改数据集

按选定的(加亮的)列的升序对表排序。按降序排序。切换为表格视图。切换为表单视图。查看或修改列属性。查看表属性。切换为编辑状态,允许修改、添加内容。切换为浏览状态,不允许修改。44SAS数据库SAS数据库:主要用于存放数据集和目录.临时库(WORK)SAS系统的临时工作目录,退出系统时,其中的内容全部删除。永久库与临时库相反。SAS提供SASUSER,SASHELP。45创建用户永久库在操作系统中的资源管理器,建立一文件夹(1)程序方式:

libname

库名‘文件夹所在路径’例:libnamemath‘H:\sasfiles’;run;在SAS系统中建库46注:(1)可以按Browse

查找文件夹

(2)可以在右上角Enableatstartup

前打钩,即启动SAS就建立这个库标记。(2)菜单方式:点击图标,然后按要求操作:打开NewLibrary对话框——在Name

框中键入库标记名——在Path

框中指定相对应的文件夹——OK47第3章

SAS语言初步48统计计算StatisticalComputation程序结构SAS程序ProcedureStep(过程步)DataStep(数据步)49统计计算StatisticalComputationDatamysas.bodyfat;Inputsex$fatpct@@;/*每行数据可以安排多个观察值*/fat=fatpct/100;cards;M13.3F22M19F26M20F16M8F12M18F21.7M22F23.2M20F21M31F28M21F30M12F23M16M12M24;PROCmeansdata=bodyfat;var

fatpct;run;DATA步程序步1.一个简单SAS程序一.SAS语言构成50统计计算StatisticalComputation该程序的结构包括两部分:以关键词DATA开始的DATA步;主要创建数据集,如此例中的bodyfat,同时也可以产生一些描述性统计和报表输出;以关键词PROC开头的PROC步。PROC步则是系统预先写好的执行特殊任务的SAS子程序,如此例中的means过程,它主要是承担数据的分析,同时也可产生相关的数据集。51

SAS程序是由SAS关键词、SAS名字、特殊字符(如例子中的$号)和运算符组成的字符串,并以分号(;)结尾的SAS语句组成,它要求SAS系统执行一种操作或给SAS系统提供信息。从该程序可以看出SAS程序的特点:52

SAS程序不区分大小写,语句位置任意,一条语句的书写既可起始于任何行、列,也可跨越多行,同时也可以将多条语句写在一行。不过一个好的习惯是DATA步和PROC步顶格书写,在每个步骤内的语句以缩进的方式书写,这样阅读和理解起来方便。53

在SAS程序中可以加入注释,注释使用C语言语法,用/*和*/在两端界定注释,这种注释可以出现在任何允许加入空格的位置,可以占多行。

下面是一个注释的例子:

datac9501;/*生成95级1班考试成绩的数据集*/54

各种业务数据往往是以不同的格式存放在分散的业务系统,要在SAS中实现对数据的管理、分析和再现,必须将各种不同格式的数据表转换为SAS数据集,SAS中数据的定义语句包括:

Data;数据步的第一条语句

Input:指定如何读取数据并将其赋予每个变量格式为:input变量名1[$]变量2[$]…;55Cards(或Datalines);告诉SAS读取Cards

后面的数据行Infile‘数据文件名’;调用外部源数据文件Run;表示数据步的结束

List;列表显示数据的输入格式,以便检查数据是否是否输入在它对应的栏位上,一般写在Input语句的下一行格式为:List;56Label;定义变量标签格式为:Label变量名=‘标签’;Format;定义数值标签Retain;预置变量值格式为:变量1初值1变量2初值2…;57在数据步中输入数据可以从原始数据输入,也可以从已有数据集输入。从原始数据输入要使用INPUT语句来指定输入的变量和格式。用INPUT语句输入数据

常用的输入方式有三种:1.自由格式

2.列方式

3.规定格式581.自由格式:按顺序列出每个观测的各个变量名,中间用空格分开。变量如果是字符型的需要在变量名后面加一个$符号,$符与变量名可以直接相连也可以隔一个空格。

输入格式:input

变量名1[$]变量名2[$]…[@|@@];特点:输入的数据之间至少要用一个空格隔开

input中定义的变量顺序应与数据区中数据值对应一行一条观测(无@|@@选项时)59统计计算StatisticalComputation例子dataA;inputsex$fatpct;cards;M13.3F22M19F26;run;数据集A中的数据

SexfatpctM13.3F22M19F2660统计计算StatisticalComputation@和@@的作用dataA;inputxy@@;cards;1122334455667788run;数据集A中的数据x

y2244667788dataB;inputx@;inputy@;cards;1122334455667788run;dataC;inputx;inputy;cards;1122334455667788run;数据集B中的数据

x

y225566数据集C中的数据x

y5561统计计算StatisticalComputation输入格式:input

变量名[$]起始列-终止列…;2.列方式特点:输入的数据按固定的格式排列可将含空格的字符串赋值给字符型变量可只读取数据区中某些数据例:inputname$1-6sex$14-15dmy$7-13phy18-19;62输入格式:input

位置控制指针变量名[$]读入格式…;3.规定格式特点:适用于字段固定格式的数据给出字段开始列数,通过输入格式给出读入长度可设定输入格式63@n

表示将输入指针移动到第n列,这是指针的绝对位置移动+n

表示将输入指针向后移动n列,这是指针的相对移动位置控制指针例:①input@1name$6.dmydate7.sex$2.math2.phy2.eng2.;②inputname$6.@14sex$2.@7dmydate7.+4phy2.;64常用的过程名称及其功能

过程名功能Sort将指定的数据集按指定变量排序Print将数据集中的数据列表输出tabulate将数据按照指定的分类变量以表格的形式分类汇总Means对指定的数值变量进行简单的统计描述Freq对指定的分类变量进行简单的统计描述65过程名功能

Ttest对指定的变量做t检验

Anova对指定的变量做方差分析npar1way对指定的变量做非参数检验

Reg对指定的变量做回归分析

Corr对指定的变量做相关分析

Discrim对指定的变量做判别分析Cluster对指定的变量做聚类分析Chart绘出低分辨率的统计图66算术运算符:**(乘方)*/+-比较运算符:=(eq)^=(ne)>(gt)<(lt)>=(ge)<=(le)IN(在列表中)逻辑运算符:^(not非)&(and与)|(or或)其它运算符:><(取小)<>(取大)||(连接)SAS运算符(1)

括号内的表达式先算(2)

优先级(先算乘方,再算乘除,后算加减)(3)

相同优先级别的算符,按顺序,先左后右运算次序671.赋值语句二.SAS用作一般高级语言

它是将某个SAS表达式的值赋给变量.其格式为:变量=表达式;

若变量已经存在,则表示对该变量的值进行修改,否则表示建立一个新变量

68例:

一组赋值表达式isfemail=(sex=‘女’);/*生成一个取值为0或1的变量*/avg=(math+chinese)/2;/*用一个公式计算平均分数*/y=sin(x)**2/*使用了正弦函数和乘方运算*/default=.;/*给变量赋了缺失值*/692.输出语句

SAS数据步的输出一般是数据集,用赋值语句计算的结果会自动写入数据集。

例:结果输出到数据集中

data;a=5<>3;b=a**3;run;

由于没有指定数据集的名称,系统会在WORK数据库下产生一个临时数据集data1,打开该数据集就可以看到。70PUT语句的几种显示形式:(1)使用put语句输出结果:例如:

data;

x=0.5;y=sin(x);put'Sinefunctionvalueof'x'is'y;run;结果将在运行记录窗口显示一行

Sinefunctionvalueof0.5is0.479425538671(2)在PUT语句中使用“变量名=”来指定输出项可以显示带有变量名的输出结果

例如:

data;

x=0.5;y=sin(x);putx=y=;run;结果将在运行记录窗口显示一行

x=0.5y=0.479425538672(3)PUT语句的输出项可以指定具体列位置以及小数位数

例如:下面的PUT语句指定把x数值显示在第10-20列,把y数值显示在第30-40列,并保留6位小数:

data;

x=0.5;y=sin(x);putx10-20.6y30-40.6;run;在指定的列位置内,数值型数据靠右对齐,字符型数据靠左对齐.要保留的小数位数写在一个小数点后面,如果变量为整数值或者字符型则不必指定小数位数.73(4)PUT语句还可以使用类似C、FORTRAN语言的“域宽.精度”方式指定输出的宽度和精度

例如:使x占用第1-20列,8位小数右对齐;y占用第21-40列,8位小数,右对齐。

data;

x=0.5;y=sin(x);putx20.8y20.8;run;

其中小数点前面为输出宽度,小数点后面为输出精度(小数位数)。743.分支语句

(1)IF

条件表达式THENSAS语句;/*如果条件表达式为真(其值非0),则去执行THEN后面的SAS语句*/(2)

IF

条件表达式THENSAS语句;

ELSESAS语句;/*如果条件表达式为真(其值非0),则去执行THEN后面的SAS语句。若条件表达式为假(其值为0),则去执行ELSE后面的SAS语句*/754.循环语句(1)简单DO语句格式:

DO;

多个sas语句;

END;

这时的DOEND象是一对括号,将多个SAS语句封装起来,它通常与IF语句联合使用。76(1)简单DO语句

IFSEX='男'THENDO;MATH=MATH+2;PHY=PHY-4;TOTAL=SUM(MATH,PHY);

END;…

相当于

IFSEX='男'THEN

MATH=MATH+2;IFSEX='男'THENPHY=PHY-4;IFSEX='男'THENTOTAL=SUM(MATH,PHY);77(2)循环DO语句格式1:

DO循环变量=初值[TO终值BY

步长];

若干SAS语句;(循环体)

END;

注:[]括号内的终值和步长均为可选项,当无步长时,其值为1,当无终值时,循环体中至少有一语句控制循环的结束,否则就为一死循环.其执行过程是,循环变量在取得初值后,结合步长方向,同终值进行比较,若没有超过终值,则执行一次循环体,循环变量增加一个步长,继续下一轮的执行,直到循环变量超过终值为止.要注意在循环体内不要对循环变量进行操作,以免出现死循环,另外循环变量也会被写到所建的数据集,若不需要,可用DROP语句将其删除.78(3)循环DO语句格式2:

DO循环变量=值1,值2,值3,…;

若干SAS语句;(循环体)END;例如:DoI=2to10by2;Doj=10to2by–2;Dok=3.6to4.8by0.05;Don=1,5,15,30,60;Domonth=‘JAN’,’FEB’,’MAR’;Doq=kton/10;79(4)循环DOWHILE语句格式:

DOWHILE

条件表达式;若干SAS语句;(循环体)

END;此循环语句执行的过程是:当条件表达式为真时,执行循环体,直到条件表达式为假为止.它是先判断条件,再执行循环体。80(5)循环DOUNTIL语句格式:DOUNTIL

条件表达式(循环推出条件);

若干SAS语句;(循环体)END;它首先执行循环体一次,之后再进行条件的判断:

若条件为假,则继续下一次循环;

若条件为真,则循环结束。81

SAS可以把一组同为数值型或同为字符型的变量合在一起,使用同一个名字称呼,用下标来区分。这与通常的程序设计语言中的数组略有区别,通常的程序设计语言中数组元素没有对应的变量名,而SAS数组每个元素都有自己的变量名。三.数组82统计计算StatisticalComputationArray

数组名(维数说明)数组元素名列表(初始值表)1.数值型数据例如:定义一个名为price的向量,包括一个交易日的开盘价、收盘价、最高价、最低价。

Arrayprice(4)openp

closep

maxp

minp(0,0,0,0);定义数值型数组的格式为:83统计计算StatisticalComputation将变量price存储在数据集中,x需运行如下程序:datatest;

arrayprice(4)openp

closep

maxp

minp(0,0,0,0);run;

注:(1)在定义数组的时候,也可以省略变量名列表。这时系统将自动产生变量名。例:Arrayprice(4);将产生一个有4个变量的数组,变量名依次为price1,price2,price3,price4.84(2)可以使用起始序号、结束序号的方式定义数组。例:ARRAYprice(1:4)price1-price4(0,0,0,0);(3)初始值表可以省略,这时其初始值为相应数组元素的值(如果其数组元素还没有值则初值为缺失值)85统计计算StatisticalComputation(4)

在定义数组的时候也可以不指定维数,这时数组大小由提供的元素列表中的变量个数决定.例:Arrayprice(*)openp

closep

maxp

minp(0,0,0,0);(5)

除了定义一维数组外,可以定义高维数组.例:Arraytable(2,2)x11x12x21x22;其中,table(1,1)为x11,table(1,2)为x12,table(2,1)为x21,table(2,2)为x22。二维数组元素按行排列。86Array

数组名(维数说明)$元素长度说明数组元素名列表(初始值表);2.字符型数组

定义字符型数组的格式如下:例如:定义一个包含字符型变量name,code,label的数组.ARRAYtable(3)$10namecodelabel(‘a’,‘b’,‘c’);注:与数值型变量不同,如果不指定初始值,那么系统将不会自动填充缺失值。87第4章SAS语言的数据管理功能88

SAS语言是一种专用的数据管理、分析语言,它提供了很强的数据操作能力。这些数据操作能力表现在它可以轻易地读入任意复杂格式的输入数据,并可以对输入的数据进行计算、子集选择、更新、合并、拆分等操作。另外,SAS系统还提供了用来访问其它数据库系统如Sybase、Oracle的接口,访问各种微机用数据库文件如FoxPro、Excel的接口及向导,并提供了一个SQL过程来实现数据库查询语言SQL的功能。89复制SET:完完全全的复制原有数据集一.数据集的复制与修改例:datascore1;set

mysas.score;run;修改DROP:去掉原有数据集中的一些变量KEEP:保留原有数据集中的指定保留的变量IF:挑选符合特定条件的记录例:datascore1;set

mysas.score;dropsexage;run;90二.数据集的拆分datac9501mc9501f;setc9501;

select(sex);when('男')outputc9501m;when('女')outputc9501f;otherwiseputsex='有错';end;dropsex;run;procprintdata=c9501m;run;procprintdata=c9501f;run;91ABABABAB纵向合并横向合并++三.数据集的合并92

数据集的纵向合并是将数据集纵向连接起来,其主要目的给数据集追加观测。这一功能可由SET语句完成。其格式如下:SET

数据集1(选项)数据集1(选项)…;1.纵向合并93常用的选项有:

KEEP=变量表只打开由变量表中所列出的变量..

DROP=变量表变量表中所列出的变量将不被打开。

FIRSTOBS=n1从第n1个观测开始以后的观测将被选入新建数据集.

OBS=n2新建数据集的观测到第n2个观测为止.

RENAME=(原变量名=新变量名)将原变量名改为新变量名.94dataA;inputnuname$mathphyeng;cards;9701wanglei9086799702wanghao9897909703gudexian8786949706zhuming968786run;数据集A:nunamemathphyeng9701wanglei9086799702wanghao9897909703gudexian8786949706zhuming968786dataB;inputnuname$mathphichemgeo;Cards;9701wanglei908689769702wanghao989769729704zhuzhun887678689705chaoyin64857666run;数据集B:nunamemathphichemgeo9701wanglei908689769702wanghao989769729704zhuzhun887678689705chaoyin6485766695dataC;setA(drop=eng)B(drop=chemgeorename=(phi=phy));run;

OBSNUNAMEMATHPHY

19701wanglei908629702wanghao989739703gudexian878649706zhuming968759701wanglei908669702wanghao989779704zhuzhun887689705chaoyin648596若不用选项,直接使用,其结果如下:dataC1;setAB;run;OBSNONAMEMATHPHYENGPHICHEMGEO19701wanglei908679...29702wanghao989790...39703gudexian878694...49706zhuming968786...59701wanglei90..86897669702wanghao98..97697279704zhuzhun88..76786889705chaoyin64..85766697数据集的横向合并是将不同数据集中的观测合并成一个新的观测。可用MERGE语句实现此目的。(1)一对一合并

它是将多个数据集中第一条观测合并成新数据集的第一条观测,第二条观测合并成新数据集的第二条观测,等等,没有的用缺失值替代。2.横向合并98dataAA;inputx1x2;cards;127845;dataBB;inputx1y1y2;cards;112233445566run;dataaabb;mergeAABB;run;数据集AA:x1x2127845数据集BB:

x1y1y2112233445566merge数据集aabbobsx1x2y1y21112223324485566345..99(2)匹配合并

这种合并是按某一公共变量的值进行横向连接,其做法是首先对公共变量进行排序,然后再进行合并。100procsortdata=A;bynu;run;procsortdata=B;bynu;run;dataC;mergeAB;bynu;run;dataA;inputnuname$mathphyeng;cards;9701wanglei9086799702wanghao9897909703gudexian8786949706zhuming968786run;dataB;inputnuname$mathphichemgeo;Cards;9701wanglei908689769702wanghao989769729704zhuzhun887678689705chaoyin64857666run;101

OBSNUNAMEMATHPHYENGPHICHEMGEO19701wanglei90867986897629702wanghao98979097697239703gudexian878694...49704zhuzhun88..76786859705chaoyin64..85766669706zhuming968786...得数据集C如下:102四.数据集的更新如果数据集中的某些数据值有错误或者现在的值已经改变了,我们可以从更正了的原始数据重新生成数据集,或者使用更有效的方法,即建立一个只包含新数据值的数据集,用此数据集修改原数据集。103

DATA新数据集名;UPDATE

原数据集更新用数据集;BY关键变量;RUN;使用如下的DATA步中可以实现数据集的更新104第5章数据的统计描述105一、实现描述性统计功能的几个过程描述性统计指标的计算可以用四个不同的过程来实现,分别是means过程、和summary过程、univariate过程以及tabulate过程;统计制图的过程均可以实现对样本分布特征的图形表示,一般情况下可以使用的有chart过程、plot过程、gchart过程和gplot过程。106SAS过程步的一般形式Proc过程名

data=数据集统计变量关键字列表;过程语句/选项;过程语句/选项;

……Run;107二、描述性统计过程的一般格式1.means过程的一般格式procmeans选项列表;

by变量名称(分组变量);

class变量名称(分组变量);

freq变量名称(数值变量,用以表示相应记录出现的频数);

weight变量名称(数值变量,用以表示相应记录的权重系数);

var

变量名称(待分析的数值变量);

id变量表;

outputout=SAS数据集;统计量关键词=变量名表run;可选择语句必需的语句108DATA=SAS数据集名,指明进行分析的数据集名,其缺省值为最近建立的SAS数据集。NOPRINT,只生成新的数据集而不显示在屏幕上。MAXDEC=n指定输出结果小数部分的最大位数,n的取值范围为0~8,缺省值为n=2ALPHA=α值,指定显著性水平α的值。VARDEF=除数,指定计算方差所用的除数.除数可以用以下关键字表示:1.DF用自由度(N-1)做除数,这是缺省设置。

2.N用观测数做除数。

3.WEIGHT|WGT用权重和做除数。

4.WDF用权重和减1做除数。常用的几个选项如下109统计量用关键词表示:

N、mean、std、min、max、Nmiss、range、sum、var、uss、css、cv、stderr、t、prt、sumwgt、skewness、krutosis、clm、lclm、uclm等,其中前五个统计量为缺省时的值.要得到这些统计量,只需给出相关的关键词即可.这此关键词亦可用于OUTPUT语句中。clm是计算置信上限和下限;lclm计算置信下限;uclm计算置信上限。110VAR变量表

规定要进行分析的所有数值变量的列表.SAS将对Var

语句所规定的所有变量进行描述性分析.

格式为:var

变量1变量2…;BY变量表分组计算分析变量的描述性统计量值,不过在使用该语句之前,应先对BY后面指定的变量表进行排序。可选择的过程语句111CLASS变量表此语句的作用与BY语句类似,其不同之处是它不要求事先对CLASS的变量表进行排序。

ID变量表用ID后面指定的变量表的值来标识输出的观测.

指定其后的变量代表的是频数,此语句当数据集是频数表资料时才使用。

FREQ变量112WEIGHT变量指定其后的变量代表权重。该变量的值应大于零,若某值小于零或缺失,则取该值为0。

OUTPUTOUT=SAS数据集统计量关键词=变量名表该语句将结果输出到某SAS数据集,其中OUT=SAS数据集指明将结果保存的数据集,若要创建永久数据集则要用两级命名。1132.summary过程的一般格式procsummary选项列表;

by变量名称(分组变量);

class变量名称(分组变量);

freq变量名称(数值变量,用以表示相应记录出现的频数)

weight变量名称(数值变量,用以表示相应记录的权重系数)

output<out=数据集名><统计量关键字=自定义变量名>

var

变量名称(待分析的数值变量);

run;1143.univariate过程的一般格式procunivariate

选项列表;

by变量名称(分组变量);

class变量名称(分组变量);

freq变量名称(数值变量,用以表示相应记录出现的频

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论