1 / 47

第一讲: SAS 系统概述

第一讲: SAS 系统概述. SAS(Statistical Analysis System ,统计分析系统 ) 是 20 世纪 60 年代初推出的一种科学的统计分析技术,如今已广泛地普及和应用于医学、社会学、市场、经济和自然科学各个领域的信息处理、定量研究和科研分析中。. 1 .1 SAS 系统的主要功能与模块.

orli
Download Presentation

第一讲: SAS 系统概述

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系统概述

  2. SAS(Statistical Analysis System,统计分析系统)是20世纪60年代初推出的一种科学的统计分析技术,如今已广泛地普及和应用于医学、社会学、市场、经济和自然科学各个领域的信息处理、定量研究和科研分析中。

  3. 1 .1 SAS系统的主要功能与模块   在数据处理和统计分析领域,SAS系统是大型集成应用软件系统,具有完备的数据访问、数据管理、数据分析和数据呈现功能。它运用统计分析、时间序列分析、运筹决策等科学方法进行质量管理、财务管理、生产优化、风险管理、市场调查和预测等业务,并可将各种数据以灵活多样的各种报表、图形和三维透视的形式直观地表现出来。

  4. SAS系统包含了20多个模块,每个模块又包含若干过程,主要过程有频数统计、交叉汇总表、数据的排序分类、方差分析、相关与回归分析、制图和制表、各种高级统计分析过程,如Conjoint(结合)分析、Factor(因素或称因子)分析、Cluster(聚类)分析等。

  5. “SAS系统”窗口

  6. 常用命令

  7. SAS语言 SAS程序的书写规则 • 语句可在行的任一列开始和结束; • 语句的词之间可以用一个或多个空格符或其它特殊字符隔开; • 一个语句可以分写为多行(换行时,换行符相当于一个空格符) • 多个语句也可以写在同一行。 • 但是,规则的书写格式有助于阅读和检查,也可以减少书写错误,通常习惯使用的规则有: • 不同的程序步间留有空行; • 每个语句都另起一行。程序步的第一个语句和最后的RUN语句由第一列开始书写。其它语句按程序的逻辑结构层次每层缩进固定的列数; • 语句的词之间都是固定的一个空格符。

  8. 2.1.2 数据步和过程步 数据步(Data Step): 读入源数据文件和SAS数据集,修改、编辑或创建SAS数据集或文本文件。 过程步(Proc Step): 面向SAS数据集,完成某特定的计算、分析和呈现的功能。 每个程序步都是由若干语句构成,每个语句是由一个关键词开始,并以分号结束。DATA语句和PROC语句分别标志数据步和过程步的开始。RUN语句标志程序步的结束。

  9. 2.2 SAS数据集和SAS文件 SAS系统分析和呈现数据的过程只面向SAS数据集。当然,SAS也提供了很多工具,使用户可以方便地实现许多流行数据库文件与SAS数据集之间的转换,使用户可以面向各种格式数据文件的数据进行分析,并按用户的需要用不同的方式呈现和提交分析的结果。 SAS系统有自己的面向对象的开发工具。为了实现存储和管理这些面向对象的开发任务,SAS就建立目录册(Catalog)类型的文件,在这一类文件中可以存储整个应用系统,包括它的界面、源程序和各种对象间的连接。这些由SAS建立、维护和管理的文件都称为SAS文件。

  10. 2.2.1 SAS逻辑库  从SAS系统来看,它所建立的众多的SAS文件可按不同需要将其归入若干个SAS逻辑库,以此来对SAS文件进行访问和管理。

  11. 2.2.1.1 逻辑库名和引用SAS文件 • 在SAS系统中,为了访问一个SAS文件,一定要为该SAS文件所在的位置指定一个SAS逻辑库,即赋予一个逻辑库名或简称为库名。逻辑库名的命名规则: • 由英文字母(A~Z,包括大写和小写)或下划线(_)开始; • 由数字、字母和下划线构成; • 总共使用1至8个字符。 在指定逻辑库名以后,就可使用两级命名的方式引用SAS文件: 逻辑库名.文件名 例如,sasuser.class是指逻辑库sasuser中名为class的SAS文件。   注意:在每个SAS进程一开始,系统就自动地指定了一些逻辑库供用户使用,它们是WORK(临时逻辑库 )、SASHELP和SASUSER(永久逻辑库 )。

  12. 2.3 用数据步读入数据生成SAS的数据集 SAS中基本的数据输入语句包括: • DATA;(数据步的第一条语句) • INPUT;(将源数据文件中的数据读入SAS数据集) • LIST;(列表显示数据的输入格式,以便检查数据是否输入在它对应的栏位上) • CARDS(或DATALINES);(告诉SAS读取CARDS后面的数据行) • INFILE‘数据文件名’;(调用外部源数据文件) • RUN;(表示数据步的结束)

  13. 2.3.1 数据文件格式与输入模式 2.3.1.1 按列输入模式 对字段固定格式的源数据文件,使用INPUT语句读入时,通常采用按列输入模式。其一般格式为: INPUT 变量名[$] 开始列-结束列…; 其中,符号$为字符型变量的选项,若为数值型变量,则不必加这个符号。

  14. 注:在Height和Weight的栏位后面用“.1”表示小数位占据1位

  15. 注:SAS将从数据行的第7列开始读取SEX的变量值1位数,然后,SAS回到数据行的第3列开始读CASEID变量值的3位数(此例读的1行的001,其余类推)。“INPUT @n”语句一般用于读取一个现成的外部数据文件,因此,INPUT之前应有“INFILE'数据文件名';”语句。用“+n”跳列读取数据: +n的含义与@n不同。@n是跳读第n列开始的某变量值;而+n表示“从当前指针位置向右空出n之后”再去读新的变量值。

  16. 2.3.1.2 列举输入模式 对于自由格式的数据文件,系统根据分隔符区分各个字段,SAS采用列举模式读入。其一般形式为: INPUT 变量名[$]…; 其中,符号$为字符型变量的选项,若为数值型变量,则不必加这个符号。

  17. [例2-7] 在字符型变量后加一个字符&,把两个字符串(中间有若干空格)作为一个整体读取。 将[例2-6]中INPUT语句改为如下格式,则能解决上例中变量NAME的值不能正确读入的问题: INPUT ID CASID NAME $ & SEX AGE EDUC;

  18. 注:若在input语句的最后加入跟踪符号“@”,可保留input语句使用过的数据行的剩余数据供后面的input语句使用;若在input语句的最后加入跟踪符号“@@”,则可保留input语句使用过的数据行的剩余数据供下一个循环使用。本例在INPUT后面用两个“@@”跟踪符号,因此每行数据可以安排几个观察值(这里是3个观察值),每个观察值分别有3个变量值。注:若在input语句的最后加入跟踪符号“@”,可保留input语句使用过的数据行的剩余数据供后面的input语句使用;若在input语句的最后加入跟踪符号“@@”,则可保留input语句使用过的数据行的剩余数据供下一个循环使用。本例在INPUT后面用两个“@@”跟踪符号,因此每行数据可以安排几个观察值(这里是3个观察值),每个观察值分别有3个变量值。

  19. 2.3.1.4 用INFILE语句调用外部数据文件 使用INFILE语句时,必须建立两个文件,一个是纯命令文件,另一个是纯数据文件。例如,首先要建立以下的命令文件(即程序)。 DATA older; INFILE 'older.dat'; /*调用当前目录中的older.dat数据文件*/ INPUT ID1 1-2 CASEID 3-5 S EX 7; 其他数据转换语句; RUN; 其次要在当前目录建立older.dat纯数据文件。

  20. 2.3.1.5 通过CARDS命令(或DATALINES命令)读取数据   用CARDS(或DATALINES)命令导读CARDS后面的数据。CARDS语句的位置如下: DATA 数据集名; INPUT 变量名列表; LIST; CARDS(或Datalines); 数据行 RUN;

  21. 2. 4 数据的输出格式 2.4.1 用FORMAT指定输出格式   可以在数据步的INPUT语句后加入FORMAT语句,其一般形式为: FORMAT 变量名 输出格式…;

  22. 2.4.2 用PUT语句改变输出格式

  23. 2.4.3 用LABEL语句定义变量标签

  24. 2.4.4 用FORMAT过程定义数值标签

  25. 2.4.4.2 数值标签的存储和调用

  26. 2.5 读入数据的选取 2.5.1 IF语句   有些操作命令通常要以IF语句为先决条件,符合IF语句中的条件时,则可执行DELETE(也可执行GO TO、SUM或LIST)以及赋值等命令语句。

  27. 2.5.2 用RETAIN语句预置变量值 在数据步执行的每次循环中,RETAIN语句将指定的变量初始化。由于RETAIN命令不是过程(PROC),因此它可放在程序的任何位置。其命令格式为: RETAIN 变量1 初值1 变量2 初值2…;

  28. 2.6.1.1 问卷设计简例   在社会调查与市场研究中,有多种调查研究方法(如总卷调查法、文献追踪法、内部资料调研法、访谈调查法、亲自实践法等)。目前,绝大多数是采用发放问卷的形式采集原始数据。然后,把反馈而来的问卷编码成计算机统计软件所能识别的数码。 下面举一个简单问卷设计如表2-1所示:

  29. 2.6.1.2 数据编码

  30. 2.6.1.3 一个数据编码方案

  31. 2.6.2 一个简单的SAS编程

More Related