SAS宏编程技术PPT.ppt

  1. 1、本文档共87页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SAS宏编程技术PPT

第14章 宏编程技术;本章内容包括: ;概述 ;宏变量 ;引用宏变量 ;例14.3 多次引用宏变量。 %let a=ResDat.class; data male; set a ; if sex=M; proc print; title SUBSET OF A; data female; set a ; if sex=F; proc print; title SUBSET OF A; run;;例14.4 改变宏变量的值。 %let m=2000; %let n=1; data a; set ResDat.stk000002; where year(date)=m and month(date)=n; proc gplot data=a; title2 m 年 n 月份收盘价时序图; plot clpr*date=1; symbol1 v=star i=join r=1 c=red; run; 例中,改变宏变量的值,如:%LET N=2,3,4,5,...,12可以分别得到12个月的时序图。不过,更好的方法是用宏循环来实现这里的要求。 ;例14.5 宏变量的值为一段完整的SAS程序段。 %let plot=%str( proc gplot data=a; plot clpr*date=1; symbol1 v=star i=join r=1 c=red; run; ); 例中,必须使用%STR函数围住宏变量的值,在以后的程序中可以用PLOT来引用这段程序。 %let m=2000; %let n=1; data a; set ResDat.stk000002; where year(date)=m and month(date)=n; plot; title2 m 年 n 月份收盘价时序图; run; 例中,如果不执行宏PLOT步的程序时,可将其设定为空值(%LET PLOT= ;)。 ;例14.6 宏变量的嵌套引用。 %let m=2000; %let n=1; %let xvar=date; %let yvar=clpr; %let plot=%str( proc gplot data=a; title2 m 年 n 月份收盘价时序图; plot yvar*xvar=1; symbol1 v=star i=join r=1 c=red; run; ); data a; set ResDat.stk000002; where year(date)=m and month(date)=n; run; plot; proc print; title m 年 n 月份收盘价; run;;如何隔开宏变量引用和文本 ;例14.7 隔开宏变量引用和文本。 %let name=Resdat; %PUT name^1; %put name.1; %put name..sheet;;显示宏变量值 ;间接引用宏变量 ;宏变量范围 ;宏 ;例14.10 定义宏plot。 %macro plot; proc gplot data=ResDat.stk000002; title2 收盘价时序图; plot clpr*date=1; symbol1 v=star i=join r=1 c=red; %mend plot;;调用一个宏 ;改变宏内宏变量的值 ;定义宏变量: %let dat=stk000002; %let pr=收盘价; %let price=clpr; ? 调用宏plot: %plot; ? 改变宏变量的值: %let dat=stk000002; %let pr=最高价; %let price=hipr; ? 再次调用宏plot: %plot; run; 以上各段程序可以连在一起运行。 ;宏参数 ;例14.13 创建宏参数。 %macro plot(dat,pr,price); proc gplot data=ResDat.dat; title2 pr 时序图; plot price*date=1; symbol1 v=star i=join r=1 c=red; %mend plot; 例中,在%MACRO语句括号内定义的宏变量DAT, PR和PRICE称为宏参数。 ;例14.14 通过给宏参数赋值来调用宏。 %plot(stk000002, 收盘价,clpr); 例中,运行时,宏处理器把第一个值(stk000002)赋给第一个宏参数DAT,第二个值(收盘价)赋给第二个宏变量PR,以此类推。 ;使用宏参数的优点: 可以少写几个%let语句; 保证该宏参数变量在宏之外的程序部分不被引用; 调用宏时并不需要知道这些宏参数的名字,只要知道相应的取值。 ;宏参数赋值 ;例14.17 运行宏时赋值。 %macro

文档评论(0)

djdjix + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档