文档详情

3.原始数据读入SAS讲解.ppt

发布:2017-04-14约4.41千字共51页下载文档
文本预览下载声明
数据步读入数据;原始数据分类 ;读取数值数据的规则 数值前面的括号或者减号符号表示该数值为负。 首位有一个或者多个零不影响对相应变量的赋值。SAS不把数值尾部的空格默认为0。 数值数据的前后都可以有空格,但是数字中间一般不能有(除非用COMMA. 、BZ.等格式读入)。;字符数据 ;原始数据呈现形式 ;储存在外部文件中的原始数据,TXT文本格式。;SAS数据步作用;例1:DATA da1; INPUT x1 x2 x3; y=x1+x2+x3; CARDS; 3 1.2 0.5 2 2.4 0.9 5 3.2 0.8 8 4.1 1.1 7 3.3 0.6 ; RUN;; SAS数据集实质上是一张关系型数据表,即通常所见到的二维表格,一行表示一个观察(Observation),一列表示一个变量(Variable),行列的交叉点就是该观察在该变量上的取值。参见下页示意图。;SAS数据集(部分); DATA语句; INPUT语句; (用于DATA步的其它SAS语句) CARDS语句; [数据行] ; RUN; ; 1. DATA语句 DATA语句表示一个数据步的开始,并给出正被创建的SAS数据集的名字。 语句格式: DATA [名字1] [名字2] ... 例如: data a; data one mydata; ;使用INPUT语句读入原始数据 ; INPUT语句的五种输入方式 ;列表方式: INPUT pointer-control variable $ @ | @@; INPUT pointer-control variable :||~ informat. @ | @@; 命名方式: INPUT pointer-control variable= $ @ | @@; INPUT variable= $ start-column -end-column .decimals @ | @@; INPUT pointer-control variable=informat. @ | @@; ;选项说明;自由格式 INPUT variable-name-list [$] [@|@@]; $:此符号前的变量为字符型。默认为数值型。 表输入方式的特点: (1)顺序输入; (2)输入的数据之间至少有一个空格; (3)使用圆点“.”而不是空格作为缺失值; (4) 变量的顺序和它们的数据值顺序要一致,且个数相符; (5)字符型数据的默认宽度为8个字符,但可以使用LENGTH等语句先定义字符变量的长度。; data bc; input x1 x2 x3 x4 $; cards; 1 2 3 addabc45 5 . 3 bsddrg15 2 4 8 cssdrt54 ; run;;行保持符“@”“@@”的使用 @的作用:当程序中有多条input语句时,前一条input语句末尾使用@,表示数据指针不换行,后一条input语句接着上一条input语句读数结束地方读取数据。当用在程序最后一条input语句中时,不起作用。 @@的作用:用在程序中的最后一条input语句中,表示指针不换行,程序下一轮执行时,input语句接着其后读取数据。;Data a; Input x @; Input y ; Cards; 1 2 8 5 3 6 9 7 ; Run;;3. OUTPUT语句 OUTPUT语句把当前的观测输出到正在被创建的SAS数据集中去。 语句格式 OUTPUT [data-set-name]; OUTPUT; 语句后不加说明项。这时,把当前这个观测输出到DATA语句命名的数据集中去。下面的例子利用OUTPUT语句从一个数据行生成多个观测:;data repeat; input sub $ mea1-mea3; drop mea1-mea3; mea=mea1; output; mea=mea2; output;
显示全部
相似文档