《sas宏编程》ppt课件

《sas宏编程》ppt课件

ID:40012268

大小:306.00 KB

页数:48页

时间:2019-07-17

《sas宏编程》ppt课件_第1页
《sas宏编程》ppt课件_第2页
《sas宏编程》ppt课件_第3页
《sas宏编程》ppt课件_第4页
《sas宏编程》ppt课件_第5页
资源描述:

《《sas宏编程》ppt课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第3章SAS宏编程学习目标掌握宏变量的定义以及引用;熟悉宏变量的特殊用法;掌握宏的定义;掌握宏的调用;SAS宏功能将一个变量,一段程序或者一个文本命名,供以后调用,是用于扩充和制做用户化SAS系统的工具;利用宏功能用户可以减少在完成一些共同任务时必须输入的文本量。当用户在某个SAS程序中使用宏功能时,这个宏功能产生所需要的SAS语句和命名,SAS系统的其余部份接受这些语句和命令。SAS宏的主要功能获取SAS的系统信息。SAS在启动时就创建了一些自动宏变量,用以存储当前SAS进程启动的日期,时间,版本号及其它

2、信息,用户可以在任何情况下使用这些宏变量。有条件的执行数据步和过程步。例如每天提交一份生产情况的详细报告,每周五增加一份汇总报告。使用宏功能每天运行同一个程序就可以实现上述任务。开发交互式系统。使用SAS宏语言的%WINDOW语句及一些基本的编程语句可开发交互式用户界面。SAS宏的主要功能产生与数据无关的SAS程序,但可展示与数据相关的结果。宏功能可保持SAS程序的独立性和移植性。一段程序在多种情况下均可运行,得到期望的结果。在不同的SAS数据步和过程步之间传递数据。SAS宏变量可在SAS的任何地方被引用,

3、具有全局性,所以成为不同过程间传递数据最方便的手段。重复执行SAS程序码。凡用到SAS宏语言的变量和语言成分,都以符号%或&开始。当SAS程序提交后,在编译阶段,系统对程序逐词扫描过程中,凡遇到%或&开始的词,就启动宏语言处理器对此进行处理。宏变量宏变量属于SAS宏语言,但不同于DATA步变量。可以在SAS程序除数据行之外的任何地方定义并使用宏变量。一个DATA步变量仅与一个SAS数据集有联系,而宏变量不依赖于SAS数据集。宏变量与数据步中变量的主要区别是,数据步中变量的值往往与被处理观测有关,而宏变量有唯

4、一确定的值,一个宏变量存放的值保持不变直到被修改。宏变量宏变量具有唯一确定的值,可以存储字符串,是全局变量。可以在数据步中被引用,但不能在数据步中用赋值语句定义。引用时,在变量名前加“&”号,引用效果是变量值代替变量名。宏变量在引用时放在单引号之间不会被解读,只能在双引号之间。宏变量的产生SAS系统包含两种类型的宏变量:自动宏变量,由SAS系统提供;用户定义的宏变量,由用户在程序中定义。自动宏变量在SAS进程开始时,或程序运行过程中由系统自动创建,在SAS退出前一直保持有效,是全局宏变量,能在SAS任何地方

5、被引用。以下是一些主要的自动宏变量:SYSDATE  SAS进程开始的日期;SYSDATE9以Date9.格式显示SAS进程开始的日期;SYSTIME  SAS进程开始的时间;SYSSCP使用的操作系统;SYSDAY   SAS进程开始是为星期几;SYSVER   SAS的版本;SYSLAST最新创建的SAS数据集的名字;定义宏变量有两种方式定义宏变量:%LET和callsymput。定义宏变量并分配一个值给宏变量的最简单方法是使用宏程序语句%LET。格式如下:%LET变量名=变量值;另一个语句就是call

6、symput,其格式如下:callsymput(变量名,变量值);宏变量的引用为了引用一个宏变量的值,放一个&号在宏变量名字的前面模式&name成为宏变量的引用。用户创建宏变量之后,可以在SAS程序中引用它。%letexa=score;title“displayofstudent&exa”;宏处理器用宏变量EXA的值替代&exa,SAS系统看到的是下面的TITLE语句:title“displayofstudentscore”;多次引用宏变量用户根据SAS程序中的需要可以多次引用宏变量。宏变量的值保持不变直到

7、其被修改。每次出现引用&exa,宏处理器用score替代它。改变宏变量的值在上例中,如果用户想要改变SAS数据集名字,可以在它出现的这段程序中通过改变宏变量的值来实现嵌套宏变量引用可以使用嵌套的宏变量引用来改变一个长的宏变量值而不必重新定义这个变量。例如,为了改变在PROCPLOT步中的两个画图变量,在PLOT的这个值中使用宏变量引用。宏的定义宏是一个被存贮的文本,用一个名字识别它。最简单的宏就像一个宏变量一样工作,但复杂的宏可以完成许多宏变量不能做的事。定义宏的语句格式为:%MACRO宏名称;宏文本%ME

8、ND<宏名称>;(默认存放在work.sasmacr中);%MACRO语句是每一个宏的开始,同时必须给出这个宏的名字。宏名字的命名准则与SAS名字一样。宏的文本也就是宏的内容,宏内的字符串称为固定文本或模型文本,该文本将变为用户SAS程序的一部分。%MEND语句必须围住每个宏并表示宏的介绍。%MEND语句也可以放上宏名字来说明该宏已结束。宏的调用为了调用一个宏,放一个百分数符号(%)在宏名字前面就可以了,比如:%

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。