The little SAS book 学习笔记第五章.docx

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

The little SAS book 学习笔记第五章用ODS增强你的输出结果5.1 ODS(Output Delivery System)的概念过程步不会产生输出,它只会产生数据,然后把数据发送给ODS,以决定输出的样式等。所以,不要考虑是否使用ODS,而考虑怎么使用,是接受默认输出还是改变设置。ODS就像一家商务飞机,游客乘坐car和bus赶来,在机场确认行李、安检、最终登机,飞往目的地。ODS中,数据就像游客,通过各种过程步而来,ODS处理每一个数据集并发送到目的地。实际上,不同的ODS类型就是目的地,当达到目的地时,数据的样式是由模板决定。模板是一个告诉ODS如何格式化您的数据的指令集。目的地和模板这两个概念的是你了解可以用ODS做什么的基础。目的地如果没有指定目的地,那么你的数据默认发往“列表listing”,这里有几种可选的目的地:LISTING标准SAS输出Output SAS输出数据集Html超文本标记语言RTF 富文本格式PRINTER 高分辨率的打印机输出(PS, PCL, and PD)PS 附言PCLPrinter Control Language打印机控制语言PDFPortable Document FormatMARKUPmarkup languages including XMLDOCUMENToutput document风格和表模板模板描述ODS如何制定数据格式并呈现数据。最普通的两个模板类型和是表模板类型和风格模板类型。表模板类型制定基本的输出结构,而风格模板类型制定输出将如何呈现。ODS将过程产生的数据和表模板结合成输出对象,输出对象接着与风格模板结合,并发送到目的地,创建输出。可以使用template过程创建自己的风格模板,但proc template过程晦涩难懂。幸运的是,有一个最简单和最快速的方法控制修改输出,即使用内置风格模板。可用proc template语句来访问内置模板:PROC TEMPLATE;LIST STYLES;RUN;一些内置模板如下:注意RTF和PRINTER既是目的地名又是风格名。DEFAULT是HTML的默认风格,RTF是RTF输出的默认风格,PRINTER是PRINTER的默认风格。Print、report、TABULATE三个过程中,可以使用style=option来直接控制输出特征,而不需要创建一个新的模板。5.2 追踪选择过程的输出当ODS接受来自过程步的数据时,它将数据与表模板结合。对应的表模板和数据就叫做输出对象。如果使用by语句,SAS会为每一个BY组产生一个输出对象。每一个输出对象都有名字,可以用ODS TRACE语句来查找,并用ODS SELECT语句来选择。ODS TRACE语句ODS TRACE语句告诉SAS打印出SAS日志中输出对象的信息。这里有两个ODS TRACE的语句,一个是打开trace,一个是关闭。使用方法实例如下:注意关闭语句要在run后面,否则在程序运行之前就关闭了trace。例子有关于番茄种类的数据,包括每种番茄的名字、颜色、从播种到收获的天数、典型重量:下面代码创建了一个名为giant的数据集,并使用ODS TRACE ON和ODS TRACE OFF语句来追踪proc means过程。程序运行后,日志窗口中就会有如下的追踪(由于使用了BY语句,故按照BY的组来追踪):ODS select语句知道输出对象的名字之后,可以用ODS SELECT语句来选择需要的输出对象。基本形式为:Output-object-list是名字、标签、一个或更多的输出对象的路径。例子下面代码对giant运行了proc means,并用ODS SELECT语句选择了第一个输出对象,mean:输出结果为:5.3 从过程输出中创建SAS数据集有时需要把一个过程的结果弄到SAS数据集中,有的过程用output或out=实现。但用ODS,可以储存从过程输出的任何一部分。首先要使用ODS TRACE语句决定选择输出对象名。然后使用ODS OUTPUT语句将输出对象发送到OUTPUT目的地中。ODS OUTPUT语句基本形式为:ODS OUTPUT output-object=new-data-set;这个语句不属于数据步和过程步。ODS OUTPUT打开SAS数据集并等待正确的过程输出,数据集保持开放,直到过程步的结尾。因为ODS OUTPUT是立即执行的,它将应用于proc正在处理的数据,或者应用于下一个proc(如果目前没有proc)。为确保得到正确的输出,建议将ODS OUTPUT语句放在PROC语句之后,下一个PROC 、DATA或RUN语句之前。例子仍然是关于番茄的数据:下面是引用与SAS日志,显示由proc t

文档评论(0)

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

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

1亿VIP精品文档

相关文档