SAS2005 Ch3 SAS数据步(DATA Step).ppt

  1. 1、本文档共62页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SAS2005 Ch3 SAS数据步(DATA Step)

第三章 SAS数据步(DATA Step) 为了利用SAS系统对数据进行分析,必须将数据转化为SAS数据集的形式。SAS系统提供了功能很强的数据管理模块,通过数据步(DATA STEP)实现对数据的管理。数据步在SAS系统中具有十分重要的地位,概括起来其内容主要有: 录入数据并转化为SAS数据集; 编辑数据,包括检查和修改数据中的错误、计算新变量等; 将数据写入磁盘; 对已有的数据集进行管理。如取子集、合并及更新数据集等。 学习和掌握好SAS数据集是用SAS系统分析数据的前提,因此必须熟练掌握SAS数据集的有关操作。 §1 SAS数据步(DATA STEP) 用于DATA步的SAS语句共有50多个,一般按性质可分为三类: 1、可执行语句(X),它是可以产生某种操作的语句。 INPUT语句,赋值语句(如,y=x1+x2)等; 2、定位语句(P),它们在执行时并不产生任何操作,但它们在数据步中具有重要地位。 DATA语句,CARDS语句等; 3、说明语句(D),用于给系统提供附加的信息,它们在数据步中的地位通常并不重要。 FORMAT语句,INFORMAT语句等; 利用SAS系统对数据进行统计分析,必须以SAS数据集为基础。因而在进行分析之前必须先将要处理的数据按SAS系统的格式存放在一个数据文件中,这个过程就是建立SAS数据集。 SAS数据集实质上是一张关系型数据表,即通常所见到的二维表格,一行表示一个观察(Observation),一列表示一个变量(Variable),行列的交叉点就是该观察在该变量上的取值。参见下页示意图。 SAS数据集分为两类: 一类是临时数据集,另一类是永久数据集。 一.临时数据集的建立 以单个词作为名字的SAS数据集称为临时数据集。在SAS系统运行期间,临时数据集一经建立,则该临时数据集一直存在;如果用户退出SAS系统,则临时数据集立即被删除。用户重新进入SAS系统后则不能再调用这些已被删除的临时数据集了。 根据数据的存在形式,临时数据集的建立可分为以下几种情况: 1.数据在作业流中 例1就是直接用SAS语句从作业流中输入数据,从而建立所需要的SAS数据集的一个例子。一般的形式如下: DATA语句; INPUT语句; (用于DATA步的其它SAS语句) CARDS语句; [数据行] ; RUN; 2.数据在外部文本文件中 例2:在‘c:\mydata\’子目录下存放有一个名为id.txt的文件,内容如下:(第一列为姓名,第二列为电话) 从外部文本文件中读入数据来建立SAS数据集的一般形式为: DATA语句; INFILE语句; (用于DATA步的其它SAS语句) RUN语句; 这里,需要注意两点: 不需要CARDS语句。 INFILE语句的作用是打开一个外部文本文件,其格式为: INFILE ’文件说明’; 这里,文件说明是指所要引用的外部文件所在的磁盘路径和文件全名,应用单引号将文件说明括起来。对于这个‘文件说明’,我们还可以采用下面的方式来处理: filename mydata ’n:\mydata\id.txt’; Data da2; Infile mydata; input name $ phone; run; 3.数据来自其它SAS数据集 例3: data da3; Set da1; /*da1是已经存在的SAS数据集*/ if x1=5; /*选择x1小于或等于5的观测*/ run; 从一个或几个已存在的SAS数据集产生新的SAS数据集的DATA步的一般形式为: DATA语句; SET | MERGE ; (用于DATA步的其它SAS语句) RUN; 这里,SET、MERGE语句用来识别已存在的SAS数据集。竖条“|”表示用户可以使用这些语句中的一个。 综上所述,数据集的建立是通过数据步来实现的。每个数据步开头的DATA语句标志数据步的开始,其它的语句称为程序语句,因为SAS把它们转换为机器语言,每次通过DATA步来执行它们。 SAS通过INPUT、SET、MERGE等语句读入每一个观测。通常,在原始数据含有多个观测的情

文档评论(0)

ligennv1314 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档