文档详情

SAS系统在第3章第三章 3.ppt

发布:2017-07-03约7.93千字共45页下载文档
文本预览下载声明
例2:选择数据集sashelp.class中的观测生成新数据集work.class,要求其中的观测满足条件:年龄大于14岁的男生。 data class; set sashelp.class ; if sex=M and age14; run;;2)WHERE语句 一般形式: WHERE 条件表达式; 功能:对读入PDV中的观测进行选择,只有使表达式成立的观测才被保留。 说明:WHERE操作符:只能在WHERE语句中使用的比较运算符。 变量 BETWEEN 值1 AND 值2 变量的值包含在值1和值2构成的的范围内。 变量 CONTAINS ‘字符串’ 变量中包含字符串 例如例2用WHERE语句代替IF语句可写为: where sex=‘M’ and age14; ;3)WHERE选项 一般形式: (WHERE = (条件表达式)) 功能:对观测进行选择,只有使表达式成立的观测才被写入目的数据集。 说明: 1)可用于SET语句或DATA语句中。 2)一个数据步中可以在SET或DATA语句中同时出现WHERE选项,同时还可以有WHERE语句。 例2可用以下数据步实现: data class (where=(sex=M)); set sashelp.class (where=(age14)) ; run;;2.2 源数据集选项 在源数据集或源数据文件读入PDV时,可通过设置此选项控制读入的起始行和终止行。 一般格式如下: ( [ FIRSTOBS = 起始行号 ] [ OBS = 终止行号 ] ) 功能:指定读取源数据集或源文件的起始行和终止行。 说明: 1)应用于SET或INFILE语句中; 2)系统在缺省情况下读取所有观测或数据行。 例3:读取sashelp.class中的第4条到第10条观测,生成新的数据集work.class。 data class; set sashelp.class (firstobs=4 obs=10); run;;3.有关变量的数据加工 3.1 选择变量 方法:数据步中设置KEEP=和DROP=选项,或加入KEEP和DROP语句, 1)KEEP和DROP语句 一般形式: KEEP 变量1 变量2 …… ; DROP 变量1 变量2 …… ; 功能: KEEP语句:列出的是在新数据集中要保留的变量, DROP语句:列出的是在新数据集中要删除的变量。;例4:如下图所示,在SAS系统中有数据集sashelp.class,其中包含了5个变量:Name、Sex、Age、Height、Weight。 如果我们希望构造一个新数据集work.class,其中仅包含变量Name、Age、Height。可通过以下数据步实现: ;data class; set sashelp.class; drop sex weight; run; 也可将上例中的DROP语句替换为如下KEEP语句: keep name age height; 则在VIEWTABLE窗口中打开work.class可看到如下结果: ;2)数据集选项KEEP和DROP 一般形式: (KEEP = 变量1 变量2 …… ) (DROP = 变量1 变量2 …… ) 功能: KEEP选项:列出的是在新数据集中要保留的变量, DROP选项:列出的是在新数据集中要删除的变量。 说明: (1)可用于SET语句或DATA语句中。 (2)一个数据步中可以在SET或DATA语句中同时出现KEEP或DROP选项,同时还可以有KEEP或DROP语句。但此时需要注意避免变量的冲突。 ;对于例4也可以用以下数据步实现: data class(keep=name age height); set sashelp.class; run; DATA语句也可写为: data class(drop=sex weight); 或: data class; set sashelp.class(keep=name age height); run; SET语句也可写为: set sashelp.class(drop=sex weight);;3.2 变量的创建与赋值 在数据加工过程中不仅可以舍弃不需要的变量,还可以创建新的变量并对其进行赋值。 1) 赋值语句 一般形式: 变量名 = 表达式; 功能: 如果等号左端的变量已经存在于数据集中,则修改改变量的值; 如果数据集中
显示全部
相似文档