第7章SAS输出控制_第1页
第7章SAS输出控制_第2页
第7章SAS输出控制_第3页
第7章SAS输出控制_第4页
第7章SAS输出控制_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第7章SAS输出控制SAS输出控制SAS系统中数据集和过程步调用过程分析结果中的输出中最常用的方式是在output窗口以文本形式显示分析结果,而图形以graph窗口显示,但这些显示方式都有一定的局限性。对输出结果的控制输出还有三种方式,通过选择不同的输出方式可以把数据步或过程步的输出结果存储为各种类型的文件格式,同时可以指定存储目录文件夹。SAS输出控制Ods(outputdeliverysystem)系统是从SAS版本7开始支持的输出传输系统,通过ods输出传输系统使过程步产生的输出结果以各种类型的文件格式存储到指定目录。输出的地点控制分为输出到终端、输出到打印机和输出到外部文件。数据步方式输出到指定文件SAS数据步生成的数据集,可以通过数据步中的file语句把输出结果写到指定文件格式和存储目录。一般需要先对数据文件或数据集根据业务需求进行处理,生成符合要求的数据,然后再应用解数语法输出到指定目录文件。1.数据步方式输出语法数据步方式输出是通过数据步中的file语句来控制输出文件格式和指定文件目录。语法格式:data_null_;Set<逻辑库名>.数据集名;File‘path\file_name.file_format’<option>;Put输出内容;Run;语法解读_null_:数据集名为SAS内部的数据集名,如果只是处理数据,不生成数据集,命名数据集为_null_.‘path\file_name.file_format’:单引号内指定文件存储路径和文件格式。<option>:参数选择项设置,如lrecl参数,默认一行缓存文件记录长度为256字节,如果一行记录超过这个长度就要用lrecl参数指定文件一行记录长度。Put:put语句指定输出内容。2.数据集解数到指定目录dat格式文件对实际应用中生成的数据集,根据业务需求,要把数据集里需要的变量(字段)写文件到指定目录,这一过程称为解数到文件。解数到文件通过SAS数据步与SAS语言中file语句和put语句的结合来读取数据集中的变量,对数据集处理解数到指定目录。用到的数据步只是处理,不建立数据集,因此数据集名命名为_null_.具体实现步骤(1)根据业务需求,对外部数据文件进行处理,运用第4章数据步处理外部文件的方式,处理外部文件,生成SAS数据集。(2)对生成的SAS数据集运用数据步中的file语句和put语句写数据文件内容到指定目录文件。【注意】处理这类问题时应将问题一步步分解,首先读取原数据文件生成SAS能处理的数据集,然后再对数据集通过where语句进行过滤,根据业务需求把符合要求的数据取出来,解数到指定目录。3.Oracle数据库表数据根据需求解数到dat格式文件SAS系统强大的功能还在于与数据库的交互能力,通过逻辑库就可以建立与数据库的桥梁。SAS与oracle数据库建立好连接通道,可以对数据库里的数据进行处理,就像处理数据集一样。把数据库里的表数据解数到指定目录文件与处理数据集的方式一样,需要先建立SAS与oracle数据库的连接通道,其他处理方式都一样。具体实现步骤(1)建立SAS与oracle数据库的连接通道Libname逻辑库名oracleuser=登录数据库用户名password=登录数据库密码path=数据库实例;【注意】oracle中所登录的数据库叫实例,即用户登录的数据库名。(2)解数到指定目录文件,这一步和处理dat解数方式一样,只是需要通过逻辑库引用数据库中的表。Printto过程输出到指定文件Printto过程主要的用途是将SAS运行后的输出信息输出到指定存储路径下的文件中。语法格式:procprintto<options>;run;表7-1options选项说明选项说明Print=指定输出存储文件的路径和文件名Log=指定日志输出存储文件的路径和文件名new指定此选项表示覆盖已经存在的文件,如果不加此选项,SAS系统输出到文件的内容只是追加不覆盖【注意】如果表7-1中的选项都不选,SAS系统默认运行结果输出到output窗口,日志输出到log窗口。当指定print=选项语句时,输出窗口不再输出打印信息;当指定log=选项语句时,输出日志窗口不再输出日志信息。Ods输出控制Ods概述与处理流程Ods是用来控制输出的,通过ods全局语句可以控制输出结果到指定的目录和文件格式。Ods对数据步或过程步的输出可以根据需求输出到数据集或更多文件类型格式,如html、dat、pdf、rtf、csv等。Ods方式是通过三个基本组件来实现的:数据组件、表定义组件(如列的顺序和行)和输出目标文件格式(如html、dat、pdf、rtf、csv)。Ods常用语法Ods传输各类格式文件的语法:语法格式:odsoutput-format<options>;SAS程序代码;odsoutput_formatclose;Ods:ods传送输出的关键字。output-format:指定输出的文件格式,可以去的格式如html、pdf、rtf。<options>:是ods全局语句中的选项参数,如file=Ods常用语法contents=、frame=、gpaht=、close等选项。SAS程序代码:SAS系统中调用内部过程对数据集进行分析处理的SAS程序。odsoutput_formatclose:指定关闭某个格式文件语句。ods提供的常用输出传输目标如下:odslistingodslisting是SAS系统默认的输出结果传输目标,默认以文本形式输出结果到output窗口,图形输出到graph窗口。语法格式和语法解读语法格式:odslisting<action>;odslisting<datapanel=number|data|page><file=file-specification>;语法解读:odslisting:告诉SAS系统采用ods的listing输出方式,固定语法。Action:该选项具有以下4个动作:(1)关闭listing默认输出目标;(2)指定要排除的输出对象;(3)选择输出包含的输出对象;(4)指定当前要排除的输出对象或选择输出的对象信息到SAS日志。表7-2action选项说明选项

功能close关闭输出到output窗口Exludeexclusion(s)|All|none指定listing要排除输出的对象SelectSelection(s)|All|none指定listing要选择的输出对象show指定当前选择或排除对象信息到日志中datapanel=:该选项语句主要用来拆分数据集,每个列和行称为数据面板。表7-3datapanel=选项功能说明File=:该选项指定输出到文件,可以取的选项分两种情况。表7-4file=file-specification可以取的选项说明选项功能number指定一个数据面板写入的观测记录data指定内存中存储面板的大小page默认此项,数据面板大于200,用datapanel=200指定file-specification

说明“外部文件路径”指定输出到外部文件,写物理路径和文件名文件标识取filename语句声明的文件标识【注意】如果关闭了listing,可以通过执行odslisting打开SAS默认输出。实际开发中为了提高程序运行的效率,不用的管道可以通过ods中的close动作关闭。对于odslisting中指定的排除项或选择项,首先要知道执行过程具有的输出项,而不是任意写输出项,查找输出项的方法是通过“odstrace”跟踪语句看到对应过程分析具有的输出项。排除项或选择语句时互斥的。OdstraceOdstrace语句对SAS系统运行的过程分析进行跟踪,可以输出一些有用的信息和输出对象信息。通过odstrace可以查看到过程分析的所有对象。语法格式:odstraceon</option>;odstraceoff;On:参数表示启动跟踪,把跟踪信息记录下来。Off:参数表示关闭跟踪。<option>:可以取的选项为label,输出对象标签路径;Listing,写跟踪记录到listing输出目标。OdsoutputOdsoutput是SAS7版本提供的一个以数据集的形式保存多数过程输出分析结果的功能。解决了以前版本不能输出到数据集的问题。语法格式:odsoutput<action>;odsoutputoutput-object-specification<=SAS-data-set>;odsoutput:指定ods输出控制目标方式是output方式,固定语句。Action:可以取的选项如下表所示:表7-5action选项说明Output-object-specification<=SAS-data-set>:指明输出对象,多个输出对象用空格分隔,如输出对象1=数据集1输出对象2=数据集2.【注意】这里的输出对象为所调用过程分析输出包含的对象,不是随意定的对象,如果想了解调用过程的输出对象,可以通过odstrace跟踪语句查看。选项功能clear对output定义信息进行清除close关闭output输出show显示output中定义的信息ods输出到html格式文件html格式文件是网络上经常用到的超文本格式文件,提供了一种跨平台展现文本和图形的语言。ods传输系统可以把过程分析输出以html格式文件的形式保存。语法格式:Odshtmlfile=‘html-file-specification’<option><‘style-definition’>;SAS分析输出程序;Odshtmlclose;File=‘html-file-specification.html’:指定输出的html文件名。<option>:通过选项对html格式文件进行设置。可以指定4个html文件,选项如表7-6所示。表7-6option选项说明选项说明Body=‘body-file-name.html’指定包含输出的html文本体Contents=‘Contents-file-name.html’指定包含html输出内容的表,通过超连接连接文件体frame-=‘frame-file-name.html’合并表内容、页内容和文本体内容,指定此选项时必须指定Contents=或page=其中的一个或两个Page=‘file-name.html’指定文件体每一页的描述信息且连接文本体。Style=:指定选择html呈现的样式。Odshtmlclose:关闭html输出。【注意】SAS9版本是odshtml输出的html4.0版本,和以前输出的html3.0版本有相当大的差异,可以通过odshtml3声明改变成html3.2格式,也可以在SAS注册目录设置html版本。Ods输出到pdf格式文件Pdf格式文件是需要通过adobeacrobatreader来进行读取的文件,需要有adobe阅读工具。语法格式:odspdffile=‘物理存储路径\file_name.pdf’;SAS程序语句;Odspdfclose;Pdf:是定义输出目标为pdf格式文件的关键字。File=‘物理存储路径\file_name.pdf’:定义输出pdf格式文件的物理存储路径和文件名。不指定物理路径则系统输出到默认物理路径。Odspdfclose:close语句关闭pdf格式输出。Ods输出到rtf格式文件Rtf是richtextformat的缩写,ods输出传输系统可以根据需求把输出信息输出成rtf格式文件保存。Rtf格式文件输出包含表格格式和字符属性等信息,可以通过很多文字处理软件阅读和编辑,也是经常用到的输出格式,具体语法和html、pdf等输出文件格式形式一样,只是打开的输出通道为rtf通道。语法格式:odsrtffile=‘物理存储路径\file_name.rtf’<style=‘指定输出样式’>;SAS程序语句;Odsrtfclose;Rtf:定义输出目标为rtf格式文件的关键字。File=‘物理存储路径\file_name.rtf’:定义输出rtf格式文件的物理存储路径和文件名,不指定物理路径则系统输出为默认物理路径。Odsrtfclose:close语句关闭rtf格式通道输出。Ods输出到dat格式文件Dat格式文件也是经常用到的格式文件,可以通过listing管道把输出存储到指定目录。语法格式:odslistingfile=‘物理路径\file_name.dat’;SAS程序语句Odslisting;对于生成dat格式文件输出,只需要通过listing通道,在“file=”选项中设置文件存储路径中的文件名,以dat格式保存。【注意】如果通过filename语句指定外部文件存储路径,此语法格式可以写为:Filename逻辑文;件标识‘物理路径名\file_name.dat’;odslistingfile=逻辑文件标识;SAS程序语句;Odslisting;说明:上面两种语法格式输出文件为dat格式文件,通过listing管道。Listing输出目标默认到output窗口,可以通过设置listing改变输出目标。Ods输出到txt格式文件Txt格式文件也是经常那个用到的一种文本文件,ods输出传输系统可以把输出结果生成到指定物理路径下的txt格式文件。Txt格式文件处理的方式和dat格式文件处理的方式一样。语法格式:odslistingfile=‘物理路径\file_name.txt’;SAS程序语句Odslisting;语法解读:对于生成txt格式文件输出,只需要通过listing通道,在“file=”选项中设置文件存储路径中的文件名,以txt格式保存。【注意】如果filename指定外部文件存储路径,此语法格式可以写为:Filename逻辑文件名‘物理路径名\file_name.txt’;Odslistingfile=逻辑文件名;SAS程序语句;Odslisting;说明:上面两种语法格式输出文件为txt格式文件,通过listing管道。Listing输出目标默认到output窗口,可以通过设置listing改变输出目标。Ods输出到csv格式文件Csv格式文件是以逗号分隔的一类文件,也经常用到,其语法格式和生成pdf或html文件基本相同。该文件通过MicrosoftOffice工具就可以打开,不属于excel文件。更多选项设置可以查看SAS帮助。语法格式:odscsvallfile=‘file_name.csv’;SAS程序语句Odscsvallclose;语法解读:对于生成csv格式文件输出,只需要通过listing通道,在“file=”选项中设置文件存储路径中的文件名,以csv格式保存。【注意】如果filename指定外部文件存储路径,此语法格式可以写为:Filename逻辑文件名‘物理路径名\file_name.txt’;Odscsvallfile=逻辑文件标识;SAS程序语句;Odscsvallclose;说明:上面两种语法格式输出文件为csv格式文件,通过csv输出目标到csv格式。Odsselect选择输出对象Odsselect语句用来控制输出列的选择,相当于在sql过程或关系数据库中执行一个查询语句。通过select语句把分析结果中需要的输出对象选择出来,不需要的输出对象不选择。在用select语句时首先需要了解所分析的输出结果都有哪些输出对象,然后再对输出对象进行选择输出,把需要的输出对象根据需求通过select语句选择输出。Odsselect选择输出对象语法格式:ods<ods传输目标定义>select<输出对象><all><none>;<ods传输目标定义>:指定传输输出目标,如html、printer、pdf、rtf、listing和output等传输目标,可选项.<输出对象>:select语句查询选择的输出对象,可选项.<all>:此参数表示选择所有的输出对象。<none>:此参数表示不选择任何输出对象。Odsexclude排除输出对象Odsexclude语句用来排除输出对象,与odsselect正好相反,它是odsselect的逆向应用.通过exclude语句把分析结果中需要排除的输出对象选择出来。在用exclude语句时需要了解所分析的输出结果都有哪些输出对象,然后再把输出对象进行排除输出。Odsexclude排除输出对象语法格式:ods<ods传输目标定义>exclude<输出对象><all><none>;<ods传输目标定义>:指定传输输出目标,如html、printer、pdf、rtf、listing和output等传输目标,可选项.<输出对象>:exclude语句排除选择的输出对象,可选项.<all>:此参数表示排除所有的输出对象。<none>:此参数表示不选择任何输出对象。【注意】odsselect与odsexclude语句是互斥的。Odsprinter输出到打印机文件Odsprinter是ods传输系统把输出对象输出到打印机或输出到打印文件。语法格式:odsprinter<action>;Odsprinter<option><style>;语法解读:Odsprinter:告诉SAS系统是采用ods的printer输出方式,固定语法。Action选项具有如下4个动作:(1)关闭printer默认输出目标;(2)指定要排除的输出对象;(3)选择输出包含的输出对象;(4)指定当前要排除的输出对

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论