文档介绍:羆芃膂第3章数据步与数据步语句蚁虿腿摘要:本章讲授数据步的基本概念,数据集的结构,学****数据步构成的有关语句功能及其用法。对本章内容的学****是进行数据处理的一个前提条件,为后面编程打下基础。螈芆莅§§膆肅衿数据步是产生数据集的一组语句,一个数据步可以建立一个或多个数据集,在一个SAS程序中可以有多个数据步。数据步程序还可以对已经建立的数据集进行修改和产生输出报告。袁蒁芈一、数据步的基本任务袈袄螄⒈建立数据集:羁袂膁SAS按照从数据步各语句中获得的信息建立数据集,该数据集存放输出的数据,故称输出数据集。DATA语句是数据步开始的标志,且提供数据集名。格式如下:莆袇羀DATA数据集名;肁罿莆⒉输入数据:肇蚆膄把外部数据读入内存,这步取决于外部数据的来源,可分为三种情况。膁荿袂从数据步内读取数据(数据源在作业流中):蝿蒄肂用INPUT语句与芁螀螈CARDS语句联合使用芇膃袇从磁盘文件读取数据:芁膁蚂用INFILE语句与罿芆衿INPUT语句联合使用莀莈袇从已有的数据集中读取数据:莇羅莆用SET语句蒀蝿莂⒊对数据进行加工:腿螄袁对数据进行加工处理的语句叫多,后面陆续介绍。在此仅介绍赋值语句。袄膀艿赋值语句格式:薇螇螆变量=算术表达式袄薁膃变量=字符串艿薆羂赋值语句功能:先计算赋值号右边的表达式的值,然后将表达式的值赋给右边的变量。如:羄羂莇x=3+6螆莅膅⒋将组成的观察写入数据集:肄肈袃在完成数据加工后,将要保存的变量(及数据)组成一例观察值,写入数据集。该操作用OUTPUT语句来完成。蒈肃蝿二、数据步程序的三种结构膄葿蚀根据数据源的不同,数据步程序有如下三种基本结构:羆膆薄⒈从数据步内读取数据(数据源在作业流中):芄袀薃当数据源的数据作为程序的一部分出现在程序中时,数据步程序的格式如下:蚈袅螁DATA数据集名;莄芁袈INPUT变量表;肆蚄肄[其它数据步语句;]蒃莈莄CARDS;螈蒃袂数据块蒃蝿羇;芆蒆螇⒉从磁盘文件读取数据(数据源是ASCII码文件):薃膀肄如果数据源是以ASCII码数据文件存储于磁盘上,SAS可以读取该数据文件中的数据来建立数据集,则数据步具有的格式如下:羈芅虿DATA数据集名;蚃薁艿INFILE数据文件名;蒅肄***INPUT变量表;螃肁袅[其它数据步语句;]***肆螁;袃膈蒇执行INFILE语句时,指定的数据文件被打开,INPUT语句从打开的数据文件中读取数据。衿袅薆⒊从已有的数据集中读取数据:(数据源是已经存在的数据集)羃蕿莁利用已经建立的数据集中的数据来产生新的数据集,其数据步格式如下:莇薄螂DATA数据集名;肂羀螀SET或MERGE或UPDATA语句;聿莃羅[其它数据步语句;]肂莁肁;蒇莆薀三、数据步的程序的执行流程膂蒈袈数据步的作用是把数据源中的数据作为输入,经过加工后输出到一个或多个“SAS数据集”。程序执行流程图如下:腿膅蒅节衿螂蚇羄蚁DATA语句莂芀肆数据源中有未读取的数据吗?莈羇袄顺序执行数据步各条语句DATA语句蒂蚀薂在执行数据步最后一条语句或遇到OUTPUT语句时,将当前观察值写入数据集。袆螅蚂本数据步执行结束。薂肁荿执行后继其它过程步或数据步。薈蒄芃是蚂芈节否是羆芃蒀§蚁虿蒇SAS数据集是一种具有特定专门格式的,且有SAS程序运行产生的,SAS使用的一种数据文件(以二进制形式存放)。它由数据步产生,作为过程步的输入。螈芆羇数据集的结构螁肀肃数据集是一个数值的集合,是一个数据值构成的矩形表(二维表)。膆肅薁观测袁蒁袀变量1袈袄蒆变量2羁袂螃变量4莆袇莈…肁罿羈1肇蚆袆数据值膁荿薄数据值蝿蒄莀数据值芁螀肆…芇膃芅2芁膁芄数据值罿芆蒁数据值莀莈葿数据值莇羅蚄…蒀蝿羄3腿螄艿数据值袄膀薇数据值薇螇膄数据值袄薁螅…艿薆芀∶羄羂罿∶螆莅袇∶肄肈芁∶蒈肃莁∶膄葿肈∶羆膆芇∶芄袀羁∶蚈袅腿∶莄芁膆∶肆蚄蚆数据集中的数据是按行列结构存放:蒃莈螂每一行代表调查的每一个个体的信息,称之为:观测值(Observations样本、记录);螈蒃芀每一列表示一个调查项目,称为变量(Variables);每一列上的数据值称为变量值(Datavalue)。蒃蝿蕿数据集的基本要素是变量和观测值。