SAS过程步通用语句
SAS过程初步
第3章SAS过程初步前面讲过,SAS系统用SAS数据步生成和管理数据,用过程步进行分析、报表、绘图。
本章介绍SAS过程步的一般用法和常用语句的含义,以及几个简单报表、分析、绘图过程的使用。
§3.1SAS过程用法及常用语句3.1.1SAS过程用法SAS过程步的一般形式为:PROC 过程名DA TA=输入数据集选项;过程语句/ 选项;过程语句/ 选项;……RUN;其中PROC语句的选项是可选的,用来规定过程运行的一些设置,如果有多个选项用空格分开。
DATA=输入数据集也是可选的,如果缺省的话使用最近生成的数据集。
过程步一般以RUN语句结束,也可以省略RUN语句而在下一个过程步或数据步的开始处结束,另外还有一种所谓“交互式过程”可以在遇到RUN语句时不结束过程运行,只有遇到QUIT语句或者下一个过程步、数据步时才结束。
过程步在PROC语句之后、结束之前可以有若干个过程语句,过程语句一般与数据步中的语句不同,数据步中的语句一般不能用在过程步中。
过程步语句一般以某一个关键字开头,比如V AR、BY、TABLES、WEIGHT等,语句中有一些有关说明,如果有选择项的话要写在斜杠后。
SAS过程步有些是对数据集作某种变换(比如SORT过程对数据集排序),不生成显示结果;多数过程步是对数据集作某些分析、报表,这时结果出现在OUTPUT窗口(高精度绘图过程的输出在GRAPHICS窗口)。
对OUTPUT窗口的结果,我们可以用“File | Save As”菜单把它保存到一个文本文件进行进一步的修饰,插入到其它报告中,也可以用“File | Print”菜单之间打印。
3.1.2SAS过程步常用语句本小节简单介绍几个在SAS过程步中常见的语句,更具体的用法可以在以后实际用到时再仔细体会。
一、V AR语句V AR语句在很多过程中用来指定分析变量。
在V AR后面给出变量列表:V AR 变量名1 变量名2 …变量名n;变量名列表可以使用省略的形式,如X1-X3,MATH--CHINESE等。
SAS:通用语句
本章内容提要
全局通用语句 过程步通用语句
全局通用语句
全局通用语句是可以用在任何地方的SAS语句。这 些语句既可以用在数据步(DATA步),也可以用 在过程步(PROC步),甚至还可以单独使用。
语句 * Dm X Title Fotnote Run Endsas Filename Libname %Include %Run %List Missing Page Skip Options
TITLE语句
TITLE语句规定SAS输出文件和其它SAS输出标题。 每一个TITLE语规定一级标题,最多可规定10级标题。
语句格式: TITLE<n><'text'|"text">;
其中:
n紧跟在词TIILE后面(不能有空格)的数字,用来规定标题的级别; text规定标题的内容。 规定标题的内容一直有效,但可以重新规定或取消。
X <'command'>; 其中: command规定主机操作系统的命令。
例7.8 应用举例。 x 'mkdir d:\ResDat1'; libname ResDat1' d:\ResDat1'; data ResDat1.class; set ResDat.class; run; 例 中 , 在 SAS 会 话 期 间 用 主 机 操 作 系 统 命 令 创 建 一 个 目 录 D:\ResDat1. 注意:键入EXIT命令退出操作系统返回到SAS会话。
例7.2 标准SAS程序开头,记录SAS程序信息的注释形式。
/*-----------------------------------------------------------*/
常用sas语句总结
常用sas语句总结第一篇:常用sas语句总结Engine(引擎)是一种访问架构,SAS系统通过它迅速地对其它数据库管理系统中文件进行读入和写出。
1.LIBNAME语句1.1解读定义 SAS 逻辑库。
具体地说,它可以(1)向 SAS 标识 SAS 逻辑库(2)将引擎与逻辑库关联(3)让您指定逻辑库的选项(4)为逻辑库指定逻辑库引用名通俗得讲,LIBNAME语句把一个libref(库标记名)和一个目录联系起来,使用户可以在SAS语句中使用库标记来指示这个目录。
提交该程序时自动引用该 SAS 逻辑库 1.2 语句格式1、LIBNAME libref ;2、LIBNAME libref Clear;3、LIBNAME libref |_ All_ List;三种格式反映了LIBNAME语句的三种用法选项说明LibrefEngineSas-Data-LibraryAccess=Readonly|TempClear_All_List规定逻辑库规定引擎规定主机系统下一个有效的物理地址规定逻辑库为只读或可修改属性清除与库标记的联系列出所有逻辑库的属性在Log窗口列出逻辑库的属性。
2.length语句SAS变量的基本类型有两种:数值型和字符型。
数值型变量在数据集中的存贮一般使用8个字节。
SAS的字符型变量缺省的长度是8个英文字符,可以使用LENGTH语句指定变量长度,LENGTH语句一般应出现在定义变量的Input语句之前,格式为: LENGTH 字符型变量名 $长度例如:length name $20 ;3.input 语句3.1解读INPUT语句用于向系统表明如何读入每一条记录。
它的主要功能有:读入由语句指定的数据列;为相应的数据域定义变量名;确定变量的读入模式(共有四种模式:column模式,formatted模式,list 模式及named模式)。
input语句执行后,SAS将读取的数据暂时先保存在内存缓冲区,然后执行后面的语句,后面的语句可以对暂存在内存缓冲区中的变量值进行修改,到最后才将整条数据写入数据集,写入数据集的数据就不能在当前data步中再修改。
SAS中的SQL语句大全
S A S中的S Q L语句大全 This model paper was revised by the Standardization Office on December 10, 2020SAS中的SQL语句完全教程之一:SQL简介与基本查询功能本系列全部内容主要以《SQL Processing with the SAS System (Course Notes)》为主进行讲解,本书是在网上下载下来的,但忘了是在哪个网上下的,故不能提供下载链接了,需要的话可以发邮件向我索取,我定期邮给大家,最后声明一下所有资料仅用于学习,不得用于商业目的,否则后果自负。
1 SQL过程步介绍SQL过程步可以实现下列功能:查询SAS数据集、从SAS数据集中生成报表、以不同方式实现数据集合并、创建或删除SAS数据集、视图、索引等、更新已存在的数据集、使得SAS系统可以使用SQL语句、可以和SAS的数据步进行替换使用。
注意,SQL过程步并不是用来代替SAS数据步,也不是一个客户化的报表工具,而是数据处理用到的查询工具。
SQL过程步的特征SQL过程步并不需要对每一个查询进行重复、每条语句都是单独处理、不需要print过程步就能打印出查询结果、也不用sort过程步进行排序、不需要run、要quit来结束SQL 过程步SQL过程步语句SELECT:查询数据表中的数据ALTER:增加、删除或修改数据表的列CREATE:创建一个数据表DELETE:删除数据表中的列DESCRIBE:列出数据表的属性DROP:删除数据表、视图或索引INSERT:对数据表插入数据RESET:没用过,不知道什么意思SELECT:选择列进行打印UPDATE:对已存在的数据集的列的值进行修改2 SQL基本查询功能SELECT语句基本语法介绍SELECT <DISTINCT> object-item <, ...object-item> FROM from-list<WHERE sql-expression><GROUP BY group-by-item <, ... group-by-item>> <HAVING sql-expression><ORDER BY order-by-item <, ... order-by-item>>;这里SELECT:指定被选择的列FROM:指定被查询的表名WHERE:子数据集的条件GROUP BY:将数据集通过group进行分类HAVING:根据GROUP BY的变量得到数据子集ORDER BY:对数据集进行排序SELECT语句的特征选择满足条件的数据、数据分组、对数据进行排序、对数据指定格式、一次最多查询32个表。
第六章[SAS过程中常用语句]
第六章 SAS过程中常用语句要对数据进行分析和处理,需在过程中使用一些过程步语句和有关的选择项。
本章介绍SAS过程步中通用语句,对有些过程步的专用语句和选择项将在后面各过程中介绍。
第一节 PROC语句语句格式:PROC <SAS过程名> [选择项];功能:指定所需调用的过程以及该过程的若干选择项。
PROC语句中有三种类型的选择项用于各过程步:(1)关键字规定反映本过程特征的关键字。
(2)关键字=值规定初值,该值可是数字或字符串。
(3)关键字=SAS数据集规定输入或输出的数据集。
最常用的是DATA一数据集,指出本过程所要处理的数据集名,如缺省则处理最新建立的数据集。
例PRINT过程,打印数据集AA的内容。
PROC PRINT DATA=A;第二节 BY 语句语句格式:BY [DESCENDING] 变量… [NOTSORTED];功能:以指定的变量值来分组处理某数据集。
BY语句总是首先与S0RT(分类)过程一起使用,以便定义数据排列次序。
当BY语句在其它大多数对SAS数据集作分析的过程中使用时,能分别处理每一个分组(BY)的观测值。
这里的变量是数据集中的用作分组的变量,以这个变量按指定要求排序(分类)。
选择项DESCENDING要求紧接的变量按降序排列数据集中各观测值,NOTSORTED要求进行分组时,各组不需按字母或数字顺序排序。
例如:BY DESCENDING AGE;本语句按变量AGE(年龄)值对数据集进行降序排序。
假设有一数据集CLASS包含有变量DAY的观测值,DAY值是一周内某天的三个字符缩写形式(如,MON,TUE…)将数据集中具有相同DAY 值的观测值分为一组,DAY的值是按日历顺序而不是字母顺序排列的。
下面的语句可以和一个PROC语句一起使用,按DAY分组处理数据集。
BY DAY NOTSORTED;(不排序,但按指定变量值将同类放一起)如DESCENDING和NOTSORTED都没指定,那么数据集中的观测值一定会按BY变量值的升序安排。
SAS统计分析介绍
proc ttest data=ncd.stat ;
var h; class urd;
urd
N
where gender=1; 1
733
run;
2
840
差 (1-2)
均值 标准差 标准误 最小值 最大值 差
168.4 6.3642 0.2351 148.0 189.0 164.8 7.5661 0.2611 104.0 193.0 3.6064 7.0317 0.3554
例如 : proc print data=score label;
id name; var math english chinese; label name=‘姓名’ math=‘数学’ english=‘英语' chinese=‘语 文’; run;
19
FORMAT语句可以为变量输出规定一个输出格式,比如 proc print data=score; format math 5.1 chinese 5.1; 分析
t检验 方差分析 logistic回归分析 判别分析 聚类分析 方差分析 logistic回归分析 判别分析 聚类分析
分类变量
t检验 方差分析 协方差分析 多因素回归分析
c2检验 logistic回归分析
c2检验 logistic回归分析
生存分析
5
有序变量 相关分析 多因素回归分析
5.304312 标准误差均 值
3645 584713.9 72.40189 0.56804 263832.5
0.140937
99% 95% 90% 75% Q3 50% 中位数
25% Q1
179.5 175 172
166.1 160
第04章_SAS过程步与过程步语句
4.1 SAS过程步的一般形式 过程步的一般形式
其他相关过程步语句: 其他相关过程步语句: 有VAR、ID、BY、CLASS、WEIGHT等 、 、 、 、 等 过程步语句。 过程步语句。 RUN语句: RUN语句: 语句 作用是通知系统开始执行本过程程序段, 作用是通知系统开始执行本过程程序段, 当一个程序文件中有几个过程时, 当一个程序文件中有几个过程时,它们可 共用一个RUN语句。 语句。 共用一个 语句
4.2.6 WEIGHT语句 语句
功能:在有些试验中的某一变量( 功能 : 在有些试验中的某一变量 ( 列 ) 的值表示 所 在DATA student;的 相 关 权 重 , 该 变 量 必 须 用 观测(行) INPUT curr$ x1-x7 wgt; WEIGHT语句来说明。 语句来说明。 语句来说明 CARDS; 格式:WEIGHT75 60 76 73 77 68 78 0.15 格式: English 变量 ; 说明: 说明: Chinese 80 70 81 82 83 78 84 0.35
4.1 SAS过程步的一般形式 过程步的一般形式
选项:以关键字为核心构成,常有三种形式: 选项:以关键字为核心构成,常有三种形式:
①关键字 在过程中,关键字代表该过程的某一特性, 在过程中,关键字代表该过程的某一特性, 若关键字作为选项出现, 若关键字作为选项,这一特性予以考虑。否则,忽略这一特性。 ②关键字=值 过程的某一特性可取不同的值,则指定 关键字= 过程的某一特性可取不同的值, 该特性的书写格式为: 该特性的书写格式为: 特性关键字= 数字或字符串)。 特性关键字=特性值 (数字或字符串)。 关键字=SAS数据集 有些过程需要特定的输入数据 ③关键字 数据集 有些过程可以建立一些特殊的数据集。 集,有些过程可以建立一些特殊的数据集。过程指定 特别输入输出数据集的选项书写格式为: 特别输入输出数据集的选项书写格式为: 关键字= 关键字=数据集名 如: PROC PRINT DATA=new
SAS过程步及常用语句
SAS过程步简介SAS过程步的一般形式为:PROC 过程名 [ DATA=输入数据集] [选项];过程语句1 [/ 选项 ];过程语句2 [/ 选项];……RUN;1.VAR语句VAR语句在过程步中用于指定分析变量。
VAR语句的语法格式为:VAR 变量名1 变量名2 … 变量名n;变量名列表可以使用省略的形式,如x1-x3 等。
应用实例:var math chinese;2.MODEL语句MODEL语句在统计建模过程中用来指定模型的形式。
语法格式为:MODEL 因变量 = 自变量列表 / 选项; 应用实例:model y=x1 x2 x3 ;3.BY语句BY语句在过程步中用来指定一个或几个分组变量,根据这些分组变量值可以把观测记录分组,然后对每一组观测分别进行指定的分析。
在使用带有BY语句的过程步之前,应先用SORT过程按BY语句指定的变量对数据集排序。
例如,假设我们已经把class1数据集按性别排序,则下面PRINT 过程可以把男、女生分别列出:proc print data=class1 ; by sex;run;4.OUTPUT语句过程步中经常用OUTPUT语句指定输出结果存放的数据集。
不同过程中把输出结果存入数据集的方法各有不同,OUTPUT语句是使用频繁的语句之一。
其语法格式为:OUTPUT OUT=输出数据集名关键字=变量名关键字=变量名…;其中用OUT=给出了存放结果数据集的名字,关键字用于定义输出变量名,用“关键字=变量名”的方式指定了系统自动输出变量与存储变量之间的对应关系。
等号后面的变量名指定了输出数据集中的存储变量名称。
例如:proc means data=data_prg.class1; var math; output out=result02 n=n mean=meanmath var=varmath;run;proc print data=result02; run;在DATA步中也可以用FORMAT语句规定变量的输出格式,用LABEL 语句规定变量的标签,用LENGTH语句规定变量的存储长度,用ATTRIB语句同时规定变量的各属性。
第04章 SAS过程步与过程步语句
4.3 通用的SAS语句
RUN语句
功能:可使前面的过程被执行。一般一个过程步 的最后是一个RUN语句,也可几个过程步合用 一个RUN语句。 格式:RUN;
4.3 通用的SAS语句
OPTIONS语句(环境设置) TITLES语句(显示题注)
FOOTNOTE语句(显示尾注)
FILENAME(为外部文件指定逻辑名)
4.1 SAS过程步的一般形式
其他相关过程步语句:
有VAR、ID、BY、CLASS、WEIGHT等 过程步语句。
RUN语句: 作用是通知系统开始执行本过程程序段, 当一个程序文件中有几个过程时,它们可 共用一个RUN语句。
4.1 SAS过程步的一般形式
常用的过程步名称及功能:
SAS程序中涉及的过程多达几百种,实现统 计功能时常用的过程也有数十种。
格式:FILENAME 逻辑名 “文件名”;
例如:filename myfile “c:\01\student.sd2”
LIBNAME(为数据集指定逻辑库名)
格式:LIBNAME 逻辑名 文件路径; 例如:LIBNAME my “c:\01”
Anova
nparlway
Reg Corr Discrim Cluster
对指定的变量做非参数检验
对指定的变量做回归分析 对指定的变量做相关分析 对指定的变量做判别分析 对指定的变量做聚类分析
Chart
FORMAT GPLOT
绘出低分辨率的统计图
提供用户自定义的输出格式 对两个变量作的散点图或折线图
4.1 SAS过程步的一般形式
选项:以关键字为核心构成,常有三种形式:
SAS过程步
means block a b c d /lsd duncan tukey;
run;
16
nested
嵌套设计的方差分析
proc nested;
classes plant leaf;
var calcium;
run;
17
glm
带有交叉项的双向不均衡设计的方差分析
或
proc factor data=socecon priors=smc msa scree residual preplot
rotate=promax reorder plot
outstat=fact all;
proc print;
run;
34
ttest
成 组 法 T 检 验
proc ttest data=pinzhs;
class pin;
var yield;
run;
35
univariate
配 对 法 T 检 验
proc univariate data=chromat;
var methdiff;
run;
36
npar1way
秩 和 检 验
proc npar1way data=gastric wilcoxon;
class group;
SET A END=EOF;
OUTPUT;
*-------CREATE AN X1*X2 GRID FOR PLOTTING--------;
IF EOF THEN DO;
Y=.;
X3=1.77;
DO X1=-1.5 TO 1.5 BY .1;
DO X2=-2 TO 2 BY .1;
第十五章 SAS过程步常用语句和过程
课程名称
妇幼卫生信息管理学
授课对象
妇幼卫生专业本科生
授课章节
第十五章SAS过程步常用语句和过程
授课学时数
3学时
其中
理论课学时
2学时实习课Leabharlann 时1学时基本教材或
主要参考书
《妇幼卫生信息管理学》
参考书:《医学统计学与电脑试验》方积乾
Windows SAS 6.12& 8.0实用统计分析教程胡良平
教学目的与要求:
3.要处理的变量是什么?
4.是否要分组进行处理分析?
例2:
PROC PRINT DATA=CLASS1;
VAR AGE NAME;
BY SEX;
RUN;
解释程序及运行结果。
第一节SAS过程步的常用语句
一、PROC语句:
格式:PROC SAS过程名[选择项]
功能:过程步的开始及调用某一要使用的过程
二、VAR语句:
第十五章SAS过程步常用语句和过程
主要内容
1.过程步的通用语句
Proc语句var语句by语句format语句freq语句
2.三个常用过程名
①Print过程②Sort过程③Format过程;
第一节SAS过程步的定义和基本结构
一、SAS过程步(procedure step)的定义:以关键字PROC开始的一个或多个SAS语句,用于分析和处理数据(子程序)
(变量可以是字符型、日期型和数值型等)
功能:用于在过程步中调用变量的格式
例5:
PROC PRINT DATA=CLASS1;
FORMAT HEIGHT 6.1;
RUN;
DATA CLASS2;
INPUT DATE YYMMDD10. (X1-X5) (3.);
SAS系统和数据分析PROC步中的通用语句
第十六课用在PROC步中的通用语句当我们用DATA步创建好SAS数据集后,可以用SAS的一些PROC过程步来进一步的分析和处理它们。
在DATA步中用户可以使用SAS的语句来编写自己的程序,以便能通过读入、处理和描述数据,创建符合自己特殊要求的SAS数据集。
而后由一组组PROC步组成的程序进行后续分析和处理。
一、PROC程序的主要作用●读出已创建好的SAS数据集●用数据集中的数据计算统计量●将统计的结果按一定形式输出在SAS系统中,计算统计量时,对于许多常用的和标准的统计计算方法,并不需要用户自己编写这些复杂的程序,而是通过过程的名字来调用一个已经为用户编写好的程序。
用户通常只要编写调用统计过程前的准备处理程序和输出统计结果后的分析和管理程序。
只有用户自己非常特殊的统计计算方法才需要用户自己编写相应的计算程序。
二、PROC过程语句PROC语句用在PROC步的开始,并通过过程名来规定我们所要使用的SAS过程,对于更进一步的分析,用户还可以在PROC语句中使用一些任选项,或者附加其他语句及它们的任选项(如BY语句)来对PROC步规定用户所需要分析的更多细节。
PROC语句的格式为:PROC 过程名<选项>;过程名规定用户想使用的SAS过程的名字。
例如,我们在前面常使用的打印过程名PRINT,对数值变量计算简单描述统计量的过程名MEANS。
选项规定这个过程的一个或几个选项。
不同的过程规定的选项是不同的,因此,只有知道具体的过程才能确定具体的选项是什么。
但是,在各个不同过程中使用选项时,下面三种选项的使用格式是共同的:●Keyword●Keyword=数值●Keyword=数据集Keyword是关键字,第一种选项格式是某个具体过程进一步要求某个关键字;第二种选项格式是某个具体过程要求某个关键字的值,值可能是数值或字符串;第三种选项格式是某个具体过程要求输入或输出数据集。
例如:PROC Print Data=class ;过程Print,作用为打印输出数据集中的数据。
SAS学习系列29. 方差分析Ⅱ—ANOVA,GLM过程步
28. 方差分析Ⅱ—ANOVA,GLM过程步SAS提供了ANOV A和GLM过程步进行方差分析。
ANOV A过程步主要处理均衡数据(分类变量的每个水平的观察数是相等),该过程考虑到均衡设计的特殊构造,处理起来速度更快更省内存,也可以处理拉丁方设计、若干不完全的均衡区组设计数据等。
若试验设计不均衡,也不是前面几种实验设计数据,则应该使用GLM过程。
(一)PROC ANOV A过程步一、基本语法PROC ANOV A data=数据集<可选项> ;CLASS 分类变量列表;MODEL 因变量=效应变量列表</可选项>;<MEANS 效应变量列表</可选项> ;><TEST <H=效应变量列表> E=效应变量列表;>说明:(1)CLASS语句是必不可少的,必须放在MODEL语句之前,用来指定分类、区组变量(单因素方差分析只有一个变量);(2)MODEL语句也是必不可少的,该语句用来规定因变量和自变量效应(单因素方差分析的自变量就是分类变量)。
若没有规定自变量的效应,则只拟合截距,假设检验为因变量的均值是否为0. Model语句的主要形式有4种:①主效应模型model y=a b c;②含有交叉因素的模型model y=a b c a*b a*c b*c a*b*c;③嵌套模型model y=a b c(a b);④包含嵌套、交叉和主效应的模型model y=a b(a) c(a) b*c(a);(3)MEANS语句必须出现在MODEL语句之后,用来计算在效应变量所对应的因变量均值,但这些均值没有针对模型中的效应进行修正。
若要计算修正的均值需要用GLM过程步的LSMEANS语句;(4)MEANS语句的可选项主要有两个内容,一是选择多重比较的检验方法,二是设定这些检验的参数(只能用于主效应);bon——对所有主效应均值之差进行Bonferroni的t检验;duncan——对所有主效应均值进行Duncan的多重极差检验;smm|gt2——当样本量不等时,基于学生化最大模和Sidak不相关t不等式,等到Hochberg的GT2方法,对主效应均值进行两两对比检验;snk——对所有主效应均值进行Student-Newman-Keuls的多重极差检验;t|lsd——对所有主效应均值进行两两t检验,它相当于在单元观察数相等时Fisher的最小显著差检验;tukey——对所有主效应均值进行Tukey的学生化极差检验;waller——对所有主效应均值进行Waller-Duncan的k比率检验;……alpha=p——设置显著水平;clm——对变量的每个水平的均值按置信区间形式输出;e=效应变量——指定在多重对比检验中所使用的误差均方。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
• Proc print data=class1;run; Title “title for two procedure”; Proc means data=class1; Var weight; Run;
10. LABEL 语句
• 格式:label 变量=‚标识‛
• 功能:给变量赋以标记,输出时代替变量 名。
• 第四句是其它SAS语句,仅允许使用by语句。
• 最后是过程结束语句。 rank过程步和sort过程步一样,不产生任何输出信 息,必须借助于print 过程步,才能看到新数据集的 结果。
rank过程步和sort过程步 的区别
rank过程步不改变所有变量的观察值的顺
序,而s过程名。
过程步名
SORT PRINT UNIVARIATE MEANS
功能
将指定的数据集按指定的变量排序 将数据集中的数据列表输出 对指定的数值变量进行统计描述 对指定的数值变量进行统计描述
FREQ
TTEST ANNOVA
对指定的计数变量进行统计描述
对指定的变量做t 检验 对指定的变量做方差分析
3. rank 过程步
将SAS数据集中指定的变量的值按从小到大的顺序 附给一个序数,也称为秩次。产生的新变量称为是原变 量对应的秩次变量。 结构: proc rank data=SAS数据集名 ;
var SAS变量名;
ranks 新变量名; 其它SAS语句; run;
3. rank 过程步
• proc rank 语句,表明要建立SAS变量的秩次变量。 • 第二句是var 语句,指明数据集中要被秩次转换的变 量。 • 第三句是ranks语句,给出秩次转换后新的变量名。若 该句缺省,则新变量名覆盖原变量名。
例2 :
• PROC PRINT DATA=CLASS; VAR NAME AGE; BY SEX; RUN;
过程名(Procedure program )
SAS 过程步是用来完成某个实际任务的SAS 程序。这
种程序和SAS 数据步程序不同,它仅需要告诉计算机做什
么,而不需要象SAS 数据步那样告诉计算机怎么做。这是 因为SAS系统的过程库里已经存储了各种现成的用来完成 不同任务的程序,并且SAS系统给每一个程序定义了一个 相应的名字,称为过程名 。 过程名不超过8个字符,代表一种数据分析或实用过程 的名字。例如,ttest,anova,reg,corr,tabulate,plot, print 等,它们分别是t-检验,方差分析,回归分析,相关
序
rank过程步产生新变量,不产生新的SAS
数据集,而sort过程步不产生新变量,产
生新的SAS数据集。
4. FORMAT过程
• 功能:对字符或数值变量定义一个所需的输出 格式。 • 格式: PROC FORMAT; VALUE [$]格式名 值 1’
值 2’ run;
原值 1=‘输出 原值2=‘输出 ……;
2. SORT 过程
格式:PROC SORT [data=SAS数据集]
[out=SAS数据集]; BY [descending] 变量…; 功能:将数据集按某(些)变量排序。
例9:
• PROC SORT DATA=CLASS1 OUT=SORT1;
BY SEX DESCENDING HEIGHT; PROC PRINT DATA=SORT1; RUN;
6、FORMAT语句:用于在过程步中调用变
量的格式
7、OUTPUT语句:将过程产生的结果输出
到一个新的SAS数据集中。 8、FREQ语句:指定一个数值变量,它的 值表示数据集中观测值出现的频数。
例3 :
• PROC PRINT DATA=CLASS1; PROC PRINT ; ID NAME AGE; RUN;
format 语句
format语句是用在过程步中调用变 量输出格式的语句。format 语句是非必选 语句,必须写在过程步里面。 结构: format SAS变量名 输出格式或格式
名;
这里,输出格式是当时赋予的格式,而输出格式名 是由format过程步定义的格式名字。 一个format 语句可以给多个SAS变量赋予相同的或 分别赋予不同的格式。例如。 format sex sex. age agegrp. birthday yymmdd8. ; 这里sex 和age用的是事先定义好的格式名,
9、TITLE语句:为SAS输出规定标题行
• a.上一过程步或数据步的RUN语句之后
• b. 如果上一步无 RUN 语句,则放在本
过程的 PROC 语句之后以及下一个 DATA
步或PROC步或RUN语句之前。
例7 :
•
Proc print data=class1; Title “title for two procedure”; Proc means data=class1; Var weight; Run;
举例:
PROC SORT DATA=A OUT=B
;
语句中SORT是过程名,DATA、OUT是关键字,A和 B 是关键字的值。 Proc means data=class n mean std max min
maxdec=2; var height weight; By sex; Run;
5、ID语句:定义一个或多个变量识别观察 值
过程步的格式
PROC 过程名 [过程选择项]; 语句 [/语句选择项]; 语句 [/语句选择项]; 语句; PROC PRINT DATA=CLASS; …… VAR NAME AGE; RUN;
BY SEX; RUN;
在PROC步里,有一些最基本的信 息要告诉SAS系统
1、选择的过程是什么?(proc) 2、要分析的数据集是什么?(data) (永久数据集,临时数据集,当前数据集 和非SAS数据集) 3、要处理的变量是什么?(variable) 4、是否要分组进行处理分析?(grouping)
例5: OUTPUT语句:
格式:OUTPUT OUT=数据集名 [统计关键字=名字]
“统计关键字”指在新的数据集中需要保留的统计量
“名字”则是给这些统计量命的名字。 功能:将过程产生的结果输出到一个新的SAS数据集中。
• PROC MEANS DATA=CLASS1; VAR BUST;
OUTPUT OUT=NEW MEAN=MEANBUST;
例 label H=‚HEIGHT‛ W=‚WEIGHT‛; LABEL SEX=‚性别‛;
四、几个服务过程
1.Print过程 2.Sort过程 3.Rank过程 4.Format过程
1. PRINT过程
格式:
PROC PRINT [data=SAS数据集];
VAR 变量…;
WHERE 条件表达式;
NOPAR1WAY
REG CORR GLM LOGISTIC PHREG
对指定的变量做非参 检验
对指定的变量做回归分析 对指定的变量做相关分析 对指定的变量做方差、协方差分析 对指定的变量做logistic回归分析 对指定的变量做COX回归分析
三、用于SAS过程步中的通用语句
能够在SAS过程步中使用的语句。而非各个 过程步的专用语句。 1 、 PROC 语句:表示过程步的开始及调用 某一要使用的过程 2、VAR语句:定义被分析的变量 3、BY语句:按指定的变量值来分组处理数 据集 4、CLASS语句:在分析中定义分类变量 5、SUM语句: 对指定的变量求和,当然 该变量必须是数值型变量。 格式: sum SAS变量名;
SAS应用
SAS 过程步
(procedure step)
华中科技大学公卫学 流行病与卫生统计系
数据步(data step)相关内容
1、主要功能 2、生成SAS数据集的方法 3、SAS数据集的要素 4、基本语句 5、临时数据集和永久数据集的区别 (Temporary data set / Permanent data set )
PROC 语句
格式:PROC SAS过程名 [选择项]; 功能:调用SAS过程并完成该过程处理数据的任务。 PROC语句选择项: 1.关键字(keyword)指定反应本过程特征 的关键字。 2.关键字=值 指定关键字的初值,该值可能是数 值或字符串。 3.关键字=SAS数据集 指定输入或输出的数据集。
本次课主要内容
• 过程步的通用语句
proc var by format freq (Class Id Output Title)
• 三个过程步
1.Print 过程 2.Sort 过程 3.Format 过程
概念
过程步 (procedure step) 是以关键字 PROC 开始的一个或多个语句,它的任务 是分析和处理数据集中的数据。
RUN;
授课内容: 1.SAS过程步和常用统计方法 2.求基本统计量过程 授课学时:8个学时(理论4学时,实习4学时) 目的: 1.掌握SAS过程步的通用语句和三个常用的过程步 的格式和功能,并能够根据要求编写相应程序。 2.正确应用means过程,univariate过程和freq过程 来计算常见的基本统计量。 难点: 1.“过程”与“语句”的区别 2.format语句与format过程的区别 3.Univariate过程的输出结果的阅读
复习
例 1:
•DATA CLASS1; INPUT NAME $ 1-8 AGE 10 SEX $ 12 HEIGHT 14-17 WEIGHT 19-23 BUST 2528; CARDS;
Lumin 3 B 0.94 13.59 50.4 caihang 3 B 0.91 14.20 50.0 limin 4 G 1.39 16.15 51.6 liyou 4 B 1.02 15.44 51.9 liuyin 4 B 1.06 15.30 51.0 liuyang 5 G 1.01 15.04 51.9 huye 5 G 1.02 15.07 52.7 chengbin 6 G 1.07 17.04 53.7 yangbin 6 B 1.12 18.09 54.1 liuhong 6 B 1.14 18.80 53.5 yanjin 7 G 1.16 19.93 55.5 zhangge 7 G 1.15 18.20 51.4;