欢迎来到人人文库网! | 帮助中心 人人文档renrendoc.com美如初恋!
人人文库网
全部分类
  • 图纸下载>
  • 教育资料>
  • 专业文献>
  • 应用文书>
  • 行业资料>
  • 生活休闲>
  • 办公材料>
  • 毕业设计>
  • ImageVerifierCode 换一换
    首页 人人文库网 > 资源分类 > PPT文档下载  

    《SAS编程入门》PPT课件.ppt

    • 资源ID:17731198       资源大小:363KB        全文页数:65页
    • 资源格式: PPT        下载积分:15积分
    扫码快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 支付宝登录   QQ登录   微博登录  
    二维码
    微信扫一扫登录

    手机扫码下载

    请使用微信 或支付宝 扫码支付

    • 扫码支付后即可登录下载文档,同时代表您同意《人人文库网用户协议》

    • 扫码过程中请勿刷新、关闭本页面,否则会导致文档资源下载失败

    • 支付成功后,可再次使用当前微信或支付宝扫码免费下载本资源,无需再次付费

    账号:
    密码:
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源(1积分=1元)下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    《SAS编程入门》PPT课件.ppt

    第2章 SAS编程入门,学习目标,掌握SAS语言构成,学会运用SAS语言进行编程; 掌握DATA数据步以及通过DATA步建立数据集的方法; 了解各种PROC过程步的作用; 熟悉各种SAS函数并逐渐学会其在SAS程序中的作用; 掌握数据集的各种编辑操作方法(包括建立与保存、导入和导出、连接等); 掌握一些常用的SAS语句并在SAS程序中熟练运用。,SAS语言构成,SAS提供了一种完善的编程语言。类似于计算机的高级语言,SAS用户只需要熟悉其命令、语句及简单的语法规则就可以做数据管理和分析处理工作。因此,掌握SAS编程技术是学习SAS的关键环节。在SAS中,把大部分常用的复杂数据计算的算法作为标准过程调用,用户仅需要指出过程名及其必要的参数。这一特点使得SAS编程十分简单。,SAS语句,一个SAS语句是由SAS关键词,SAS名字,特殊字符串,并以分号(;)结尾,它要求SAS系统执行一种操作或给SAS系统提供信息。如: Data grade ; Do i1 to n; Input X Y $10. ;,SAS语句,SAS关键词:许多SAS语句都是以关键词开始并用它识别语句的类型,如DATA,INPUT,PROC和INFILE都被称为关键词。 SAS名字:SAS语句中出现名字地方很多,如变量名、数据集名、格式名、过程名,及作为文件名和库标记的特殊名字。SAS名字最多可由8个英文字母构成,第一个字符不能是数字,空格和特殊字符$、和#也不能用于SAS的名字中。另外,保留了一些特殊的变量名并赋于特定的意义,这些变量都是以下划线开头和结尾,如表示数据步已执行过的次数。,SAS表达式,表达式是由一系列算符和运算对象形成的一个指令,它被执行后产生一个目标值。运算对象是变量和常数。表达式分为简单表达式(仅用一个算符)和复合表达式(使用多个算符),如:9;Age1001;LOG(X);EXP(a);a*b/100等。SAS常数用来表示固定的值,它或者是一个数字,或者是固定的值,或者是字符串,或者是其它特殊记号。SAS有五种类型的常数:数值常数:就是出现在SAS语句里的数字,完全像通常的数值一样书写,可以包括小数点和负号等;字符常数:是由单引号括起来的1到200个字符组成的;日期和时间数值常数;十六进制数值常数;十六进制字符常数。,SAS算符,比较算符:建立两个量之间的一种关系,并要求SAS确定这种关系是成立不成立。如果它成立,输出的运算结果是1;如果不成立,运算结果为0 算术算符:就是数学运算中常用的五种运算符号 逻辑算符:通常用来连接一系列比较式,SAS算符,运算次序:下面给出复杂表达式运算次序的准则。 在括号里的表达式先计算。 较高优先级的运算先被执行。 对于相同优先级的算符,左边的运算先做。,SAS程序,由一系列SAS语句组成一个SAS程序。SAS程序中的语句可分为两类步骤:DATA步和PROC步。这两个步骤是所有SAS程序的模块。通常用DATA步产生SAS数据集,而用PROC步对SAS数据集内的数据进行分析处理并输出结果。PROC步要求SAS从过程中调出一个过程并执行这个过程,通常用SAS数据集作为输入。,SAS程序示例,data whb.phones; input name$ phone room height; cards; rebeccah 424 112 1.5648 carol 450 112 5.6235 louise 409 110 1.2568 gina 474 110 1.3652 mimi 410 106 1.6542 alice 411 106 1.6985 brenda 414 106 1.3698 brenda 414 105 1.8975 david 438 141 1.6547 betty 464 141 1.5647 holly 466 140 1.5624 ; proc print data=phones; run;,DATA步入门,SAS的数据步以DATA语句开始,用于创建和处理数据集。DATA语句以关键字“data”开始,格式如下: data 数据集名; 例如:data a.case;将创建在库a中名为case的SAS数据集,语句执行后你可在与库a对应的目录下看到刚刚建立的数据集文件case。 DATA语句所指定的数据集,一般都是以“库名.数据集名”的格式出现的,也可以单独的“数据集名”出现,此时的数据集系统默认为是临时库中的数据集,退出系统后将会被删除。,DATA步入门,直接输入方式:就是用SAS语句输入数据来产生SAS数据集的过程,一般形式为: DATA 语句; Input 语句; (用于DATA步的其它语句) Cards; 数据行 ;,DATA步入门,从外部文件读入数据集。数据若已经包含在某个外部文件(文本文件或数据文件)中,可用此方法输入数据到数据集文件中。在以上介绍的data语句后,写入以下语句: infile 外部文件的所在位置及名称 选项; input 变量名1变量名2 变量名n; infile语句用于从外部文件读入数据,必须出现在input语句之前。它的功能是指定一个包含原始数据的外部文件。,DATA步入门,从已建立的SAS数据集中产生新的数据集。如果用户从已经建立的SAS数据集中抽取部份变量或数据来形成新的SAS数据子集,可在DATA步中通过SET命令来完成。,DATA步语句及其类型,文件操作语句 运行语句 控制语句 信息语句,文件操作语句,用于输入数据集或者从这个DATA步输出,运行语句,使得用户可以创建或修改变量,或者选择一部分观测来创建数据集,控制语句,对一些确定的观测跳过一些语句,或者改变被执行语句的次序,实现从程序的一部分转移控制到另一部分,信息语句,给出关于数据集或正被创建的数据集的附加信息,不是执行语句,可以出现在DATA步的任何地方,并且有同样的功能,PROC过程步,PROC步总是由PROC语句开始,然后给出运行的SAS过程名字。例如,运行SORT过程,则使用语句“proc sort;”来开始这个PROC步。通常PROC步只需要包括一个PROC语句给出运行的过程名字和一个RUN语句。,SAS过程名及其功用,MEANS 计算基本统计量 CHART 制作次数分布表 次数分布图 UNIVARIATE PLOT 正态分布检验 PRINT 数 据 输 出 SORT 数 据 排 序 Tabulate 制作表格 ANOVA 方差分析 GLM 协方差分析 CORR 相关系数的计算 REG 直 线 回 归 PRINCOMP 主 成 分 分 析,SAS常用函数及其应用,SAS函数是一个子程序,它由0个或几个自变量返回一个结果值。每个SAS函数都有一个关键名字。为了引用函数,要写出它的名字,然后写出一个自变量或几个自变量,它们用括号括起来,这个函数对这些自变量执行某种运算,SAS常用函数及其应用,SAS函数分为十七种类型,它们是算术函数、数组函数、截取函数、数学函数、三角函数、双曲函数、概率函数、分位数函数、非中心函数、样本统计函数、随机数函数、财政金融函数、逐位逻辑操作函数、数字函数、字符函数、日期和时间函数、州和邮政编码换算函数和特殊函数。SAS系统提供的SAS函数,对用户编写SAS程序带来极大的方面,为统计分析计算提供更大的方面。,SAS数据集,SAS数据集是关系型结构,分为两个部份:描述部份和数据部份 描述部份包含了一些关于数据属性的信息即变量名称、类型及次序等信息;数据部份的结构完全等同于我们一般所理解的数据表,SAS数据值被安排在一个矩阵式的表状结构中,由字段和记录所构成,字段就是统计学中研究的变量,而记录就是每个研究对象的观测。,SAS数据集,SAS数据集又包含在SAS数据库的文件集中。SAS数据集是最常用的一种SAS文件类型,SAS数据库还可以包含其它类型的SAS文件 SAS中数据库分为永久性和临时性两种。存在于永久库中的数据集是永久存在的(只要你不去删除它),临时库中的数据集则在你退出SAS后自动被删除。 在Windows操作系统,SAS数据库以路径为基础的组织方式。为了使用SAS数据库,需要为每个SAS数据库指定一个库标记来识别。这一标记又称库逻辑名,是某个文件所在路径的别名。临时数据库的库标记为WORK,在SAS启动后自动生成,结束SAS后,库中的所有文件都被删除。,临时SAS数据集的建立,当启动SAS后,系统自动建立一个临时数据存储区,用来临时存储运行SAS时建立或调用的SAS数据集,临时数据库的库标记为WORK,在SAS启动后自动生成,结束SAS后,库中的所有文件都被删除。临时数据库的库标记不需要标注,即SAS程序中数据集work.abc与abc的表示含义完全相同,永久型SAS数据集的建立和保存,SAS启动后自动生成临时数据库的库标记,因而不需要专门进行命名,但当退出系统后临时数据库中的数据集会被自动清除。为了能反复多次使用同一数据集,需建立永久型SAS数据集。实际上,建立永久型SAS数据集,就是将SAS数据集储存在数据库逻辑名对应的路径目录下。,数据集的导入,除了通过数据步创建数据集的方法,SAS还提供了一些其他的方式可以用来读入其他格式的数据文件。SAS可以利用【FILE】菜单上的【Import Data】命令将其他格式的数据文件导入SAS系统,创建SAS自己的数据集。可以导入的数据文件格式有:dBase数据库,EXCEL工作表,LOTUS的数据库,纯文本的数据文件等。 导入的操作完全是对话式的,界面友好,简便实用。以下简单叙述导入的步骤,数据集的导出,除了导入其它格式的数据文件,SAS系统也可以导出SAS数据集为其它格式的数据文件。SAS可以利用【FILE】菜单上的【Export Data】命令将SAS数据集导出SAS系统,转换为其它格式的数据文件。同样地,可以导出的数据文件格式有:dBase数据库,EXCEL工作表,LOTUS的数据库,纯文本的数据文件等。 数据的导出和导入完全是相反的两个过程,同样地,导出数据的菜单操作也完全是对话式的,以下简单叙述导出的步骤,数据集的排序,将SAS数据集中的观测(记录)按一个或多个变量的数值大小进行排序,把结果存放在新的SAS数据集里,或者代替原始数据集,以便其它SAS过程通过使用BY语句可以直接调用该数据集。在对数据集进行合并或更新之前,也必须进行排序。SORT过程能完成对数据集的排序。,数据集的连接,数据集的连接就是把几个数据集纵向连接起来,生成逐个尾部追加的合并数据集,或按一个或多个变量排序的新数据集,此过程在DATA步中通过SET语句来完成。 Set语句从一个或几个已存在的SAS数据集中读取观测值。每一次set语句被执行时,SAS系统读一个观测送到程序数据向量。如果没有其它规定,set语句从输入数据集中读所有变量和所有观测。,数据集的合并,数据的合并是将两个或多个SAS数据集中的观测横向合并成一个新数据集的一个观测。请注意数据集连接和合并的差别 SAS系统合并观测的方式依赖于是否有BY语句伴随着MERGE语句,SAS语句,赋值语句 输出语句 条件语句 循环语句 WHERE语句 DELETE语句 累加语句 BY语句 UPDATE语句,本章小节,掌握SAS编程技术是学习SAS的关键环节。在SAS中,把大部分常用的复杂数据计算的算法作为标准过程调用,用户仅需要指出过程名及其必要的参数。这一特点使得SAS编程十分简单。 数据步程序还可以对已建立了的数据集进行修改和产生输出。在利用SAS进行数据整理和分析之前,首先必须将数据直接输入到SAS数据集中或者把其它格式的数据文件转化为SAS数据集。,本章小节,介绍了通过DATA步建立数据集的方法(直接输入方式、从外部文件读入数据集和从已建立的SAS数据集中产生新的数据集),DATA步语句及其类型(包括文件操作语句、运行语句、控制语句和信息语句),DATA步是本节的重点,也是本章的重点。通过DATA步建立数据集。需要掌握不同的情况下用DATA步产生SAS数据集的不同方法,并掌握DATA步的SAS编程方法,掌握产生SAS数据集的DATA步程序。,本章小节,SAS系统提供了十七种类型SAS函数,对用户编写SAS程序带来极大的方面,为统计分析计算提供更大的方面。SAS函数在许多数值计算及字符和数值数据处理方面为简化程序编写过程尤其有用。我们应了解各种函数的功用,掌握一些常见函数的应用,并在SAS程序中应用这些函数。,本章小节,在Windows操作系统,SAS数据库以路径为基础的组织方式。为了使用SAS数据库,需要为每个SAS数据库指定一个库标记来识别。这一标记又称库逻辑名,是某个文件所在路径的别名。SAS中数据库分为永久性和临时性两种。临时数据库的库标记为WORK,在SAS启动后自动生成,结束SAS后,库中的所有文件都被删除。,本章小节,在进行数据分析前,我们可以对SAS数据集进行预处理,包括数据集的排序、连接、合并、复制、拆分和转置,在本章对这些数据集的操作方法进行了详细的讲解。需要掌握这些数据集的操作方法,并学会自己编程,灵活运送。 我们还可以在SAS数据集的整理过程中,使用各种SAS语句,以便于数据集的处理,包括赋值语句、输出语句、条件语句、循环语句、WHERE语句、DELETE语句、累加语句、BY语句和UPDATE语句等。应注意WHERE语句与IF语句的区别。应熟练掌握这些常用的SAS语句,有助于SAS数据集的操作处理。,第3章 SAS宏编程,学习目标,掌握宏变量的定义以及引用; 熟悉宏变量的特殊用法; 掌握宏的定义; 掌握宏的调用;,SAS宏功能,将一个变量,一段程序或者一个文本命名,供以后调用,是用于扩充和制做用户化SAS系统的工具;利用宏功能用户可以减少在完成一些共同任务时必须输入的文本量。当用户在某个SAS程序中使用宏功能时,这个宏功能产生所需要的SAS语句和命名,SAS系统的其余部份接受这些语句和命令。,SAS宏的主要功能,获取SAS的系统信息。SAS在启动时就创建了一些自动宏变量,用以存储当前SAS进程启动的日期,时间,版本号及其它信息,用户可以在任何情况下使用这些宏变量。 有条件的执行数据步和过程步。例如每天提交一份生产情况的详细报告,每周五增加一份汇总报告。使用宏功能每天运行同一个程序就可以实现上述任务。 开发交互式系统。使用SAS宏语言的%WINDOW语句及一些基本的编程语句可开发交互式用户界面。,SAS宏的主要功能,产生与数据无关的SAS程序,但可展示与数据相关的结果。宏功能可保持SAS程序的独立性和移植性。一段程序在多种情况下均可运行,得到期望的结果。 在不同的SAS数据步和过程步之间传递数据。SAS宏变量可在SAS的任何地方被引用,具有全局性,所以成为不同过程间传递数据最方便的手段。 重复执行SAS程序码。凡用到SAS宏语言的变量和语言成分,都以符号%或&开始。当SAS程序提交后,在编译阶段,系统对程序逐词扫描过程中,凡遇到%或&开始的词,就启动宏语言处理器对此进行处理。,宏变量,宏变量属于SAS宏语言,但不同于DATA步变量。可以在SAS程序除数据行之外的任何地方定义并使用宏变量。一个DATA步变量仅与一个SAS数据集有联系,而宏变量不依赖于SAS数据集。宏变量与数据步中变量的主要区别是,数据步中变量的值往往与被处理观测有关,而宏变量有唯一确定的值,一个宏变量存放的值保持不变直到被修改。,宏变量,宏变量具有唯一确定的值,可以存储字符串,是全局变量。可以在数据步中被引用,但不能在数据步中用赋值语句定义。引用时,在变量名前加“&”号,引用效果是变量值代替变量名。宏变量在引用时放在单引号之间不会被解读,只能在双引号之间。,宏变量的产生,SAS系统包含两种类型的宏变量: 自动宏变量,由SAS系统提供; 用户定义的宏变量,由用户在程序中定义。,自动宏变量,在SAS进程开始时,或程序运行过程中由系统自动创建,在SAS退出前一直保持有效,是全局宏变量,能在SAS任何地方被引用。以下是一些主要的自动宏变量: SYSDATE SAS进程开始的日期; SYSDATE9 以Date9.格式显示SAS进程开始的日期; SYSTIME SAS进程开始的时间; SYSSCP 使用的操作系统; SYSDAY SAS进程开始是为星期几; SYSVER SAS的版本; SYSLAST 最新创建的SAS数据集的名字;,定义宏变量,有两种方式定义宏变量:%LET和call symput。定义宏变量并分配一个值给宏变量的最简单方法是使用宏程序语句%LET。格式如下: %LET 变量名=变量值; 另一个语句就是call symput,其格式如下: call symput(变量名,变量值);,宏变量的引用,为了引用一个宏变量的值,放一个,多次引用宏变量,用户根据SAS程序中的需要可以多次引用宏变量。宏变量的值保持不变直到其被修改。 每次出现引用&exa,宏处理器用score替代它。,改变宏变量的值,在上例中,如果用户想要改变SAS数据集名字,可以在它出现的这段程序中通过改变宏变量的值来实现,嵌套宏变量引用,可以使用嵌套的宏变量引用来改变一个长的宏变量值而不必重新定义这个变量。例如,为了改变在PROC PLOT步中的两个画图变量,在PLOT的这个值中使用宏变量引用。,宏的定义,宏是一个被存贮的文本,用一个名字识别它。最简单的宏就像一个宏变量一样工作,但复杂的宏可以完成许多宏变量不能做的事。定义宏的语句格式为: %MACRO 宏名称; 宏文本 %MEND ;(默认存放在work.sasmacr中); %MACRO语句是每一个宏的开始,同时必须给出这个宏的名字。宏名字的命名准则与SAS名字一样。宏的文本也就是宏的内容,宏内的字符串称为固定文本或模型文本,该文本将变为用户SAS程序的一部分。%MEND语句必须围住每个宏并表示宏的介绍。%MEND语句也可以放上宏名字来说明该宏已结束。,宏的调用,为了调用一个宏,放一个百分数符号(%)在宏名字前面就可以了,比如:%study 模式“%宏名称”称为宏的调用。当用户定义一个宏之后,可以在SAS程序中调用它,如: Title “Display of school %study”; 宏处理器执行宏STUDY,把宏里面的固定文本替代到TITLE语句中。TITLE语句变为: Title “Display of school Student score”;,宏的调用,SAS程序可以包括任意多个宏,且在一个程序中可以多次调用一个宏。对于简单文本的阐明,使用宏变量比定义一个宏更有效。然而,当任务比较复杂时,宏比宏变量更有优势。 把宏变量和宏结合在一起,将给出一种用宏工具编程的强有力的方法。下面我们将介绍在宏中使用宏变量的多种方法。,宏参数,可以定义宏变量作为%macro语句的一部分,如: %macro printClass(class); proc print data=,宏参数,对参数分配的值只在这个宏执行过程中有效。因此第二次调用宏时,还是要给出参数的值。宏参数是局部宏变量的一个例子。而宏变量是从用户创建它们直到SAS作业或SAS会话结束都存在;故前面介绍的宏变量为全局宏变量。 使用参数有以下几个优点: 用户可以少写几个%LET语句; 调用宏时不需要知道这些参数的名字,只需要提供这些值的类型; 使用参数可以保证该变量在宏之外的程序部份不会被引用。,宏的循环结构,宏的循环语句有三种类型,分别是 宏中DO循环语句的格式为: %do 指标变量=始点 %to 终点(BY 增量); 文本或宏程序语句; %end; %do %while(表达式); /*先判断再执行*/ 文本; %end; %do %until(表达式); /*先执行再判断*/ 文本; %end;,宏的循环结构,以生成重复的文本段为例说明如何使用宏的循环结构。假定用户想生成一系列名字用于某个SAS语句。可以写一个宏来产生具有相同前缀的一系列名字。 用示例说明宏CREATE用重复%DO循环开生成名字:,本章小节,SAS宏功能将一个变量,一段程序或者一个文本命名,供以后调用,是用于扩充和制做用户化SAS系统的工具;利用宏功能用户可以减少在完成一些共同任务时必须输入的文本量。介绍了SAS宏的主要功能,包括:获取SAS的系统信息、有条件的执行数据步和过程步、开发交互式系统、产生与数据无关的SAS程序但可展示与数据相关的结果、在不同的SAS数据步和过程步之间传递数据和重复执行SAS程序码。我们对SAS宏功能作略微了解。,本章小节,宏变量属于SAS宏语言,但不同于DATA步变量。宏变量具有唯一确定的值,可以存储字符串,是全局变量。SAS系统包含两种类型的宏变量:自动宏变量,由SAS系统提供;用户定义的宏变量,由用户在程序中定义。有两种方式供用户定义宏变量。为了引用一个宏变量的值,放一个&号在宏变量名字的前面。通过对本节对宏变量的介绍,我们需要注意宏变量与数据步变量的区别,了解两种类型的宏变量,掌握如何定义宏变量。,本章小节,本章阐述了引用宏变量的四种方式:多次引用宏变量、改变宏变量的值、创建包含SAS语句的宏变量值和嵌套宏变量引用。同时,介绍了宏变量的一些特殊用法,包括%STR宏函数、%eval宏函数、%sysfunc宏函数、字符串中引用宏变量、在数据步执行中生成宏变量和%symget宏函数。我们需要掌握引用宏变量的方法,并了解其特殊用法。,本章小节,详细讲解了宏的定义和调用问题,尤其是在宏中使用宏变量的方法,包括宏参数、宏调用宏、宏的分支结构、宏的循环结构。文章用实例说明了各种应用方法以及注意要点,在学习过程中,我们需要深刻理会这些实例的含义。通过本章的学习需要掌握定义宏的语句格式以及如何调用定义的宏。并在学习中注意宏与数据步中条件表达式的区别。,谢谢!,

    注意事项

    本文(《SAS编程入门》PPT课件.ppt)为本站会员(jun****875)主动上传,人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知人人文库网(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    网站客服QQ:2881952447     

    copyright@ 2020-2024  renrendoc.com 人人文库版权所有   联系电话:400-852-1180

    备案号:蜀ICP备2022000484号-2       经营许可证: 川B2-20220663       公网安备川公网安备: 51019002004831号

    本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知人人文库网,我们立即给予删除!