• 【SAS BASE】ODS OUTPUT


    ODS(Output Delivery System):

                 由于所有的过程输出前都会进入ODS,因此用户可利用ODS过程通过选择合适的destination来输出数据。

    一、ODS的基本性质

    • ODS输出格式:LISTING(默认的标准SAS输出)、HTML、RTF、PRTNTER、PS、PCL、PDF、OUTPUT(SAS OUTPUT Date-set)、MARKUP、DOCUMENT;
    • ODS内有table template(指定输出结构)和style template(指定外观结构):首先通过table template作用从procedure中产生数据,形成output project,然后经过style template作用送到destination加工,形成最终的OUTPUT。当然,用户可以通过PROC TEMPLATE建立自定义table template(指定输出结构)和style template(指定外观结构):
      1 PROC TEMPLATE;
      2     LIST STYLES;
      3 RUN;
    • 控制外观的style template:
       1 /*Built-in style template:*/
       2 ANALYSIS 
       3 D3D 
       4 MINIMAL 
       5 SASWEB 
       6 BARETTSBLUE 
       7 DEFAULT /*HTML OUTPUT的默认style*/
       8 PRINTER /*既是destination也是style名,还是PRINTER OUTPUT的默认style*/
       9 SANSPRINTER 
      10 BRICK 
      11 JOURNAL 
      12 RTF /*既是destination也是style名,还是RTF OUTPUT的默认style*/
      13 STATSTICAL
      14 
      15 备注:在PRINT、REPORT、TABULATE过程中,可用STYLE=选项来控制输出的外观,从而不需要再用一个新的style template.

      二、ODS OUTPUT

     1 ODS OUTPUT的一般形式:
     2 ODS OUTPUT output-object=new-data-set;
     3 /*output-object:想要保存的那部分output的name、label或路径;
     4 new-data-set:想要建立的SAS数据集的名字*/
     5 
     6 DATA Giant;
     7      INFILE 'C:MyRawDatagiant.dat';
     8      INPUT NAME :$ 15. color $ days weight;
     9 PROC TABULATE DATA=giant;
    10     CLASS color;
    11     VAR days weight;
    12     TABLE Color ALL,(Days Weight)*MEAN;
    13     TITLE;
    14 ODS OUTPUT TABLE=tabout;
    15 RUN;

    、ODS CSV

    1 *CSV文件:用逗号隔开,数值用双引号括起来,双引号内允许有空格;
    2 ODS CSV FILE='C:MyCSVfilesgolfinto.csv';
    3    PROC PRINT DATA=travel.golf;
    4         TITLE 'Golf course Information';
    5     RUN;
    6 ODS CSV CLOSE;
    7 
    8 【备注】:
    9 PROC PRINT过程默认将缺失的数值型数据打印出.(period),但是若用户不需要,则可通过指派MISSING=''系统选项来实现。

    、ODS HTML

                   生成HTML文件,用户只需要两个语句:一个打开HTML文件,一个关闭:

     1  *Create the HTML files and remove procedure name;
     2  ODS HTML FILE='C:MyHTMLFILESMarine.html';
     3  /*一般形式:----------Body-filename.html----------options--*/
     4  ODS NOPROCTITLE;/*删除输出中的标题*/
     5  DATA Marine;
     6  /*省略读入数据步骤*/
     7  PROC MEANS DATA=marine MEAN MIN MAX;
     8      CLASS FAMILY;
     9      TITLE ’WAHLES AND SHARKS‘;
    10  RUN;
    11  PROC PRINT DATA=Marine;
    12  RUN;
    13  *CLOSE the HTML files;
    14  ODS HTML CLOSE;
    15 
    16 【常用的options】
    17 1.CONTENTS='filename': 创建一个连接到body file的table of contents;
    18 2. PAGE=’filename‘:创建一个link by 页码接到body file的table of contents;
    19 3.FRAME='filename':创建一个frame使得用户可同时查看body file 和目录或者page file;
    20 4.STYLE=style-name:指定特定的style template,默认是DEFAULT.
    【备注】:若不需要任何stying,则用CHTML OUTPUT destination代替HTML.
    (CHTML:Compact HTML)

         四、ODS RTF(可用于复制进入WORD文档)

    *Create the RTF files ;
     2  ODS RTF FILE='C:MyHTMLFILESMarine.rtf' BODYTITLE COLUMNS=2;
     3  /*一般形式:----------Body-filename.rtf----------options--*/
     4  ODS NOPROCTITLE;/*删除输出中的标题*/
         (中间部分铜ODS HTML过程)
    13  *CLOSE the RTF files;
    14  ODS RTF CLOSE;
    15 
    16 【常用的options】
     1.BODYTITLE: 在RTF文件的主要部分放入titles和footnotes,而不是WORD里面的headers或footnotes;
     2.COLUMNS=n:分栏输出,n为列数;
     3.SASDATE:默认情况下,RTF输出的顶部日期和实践表示上次打开或打印成WORD的时间,加上此选项命令SAS使用当前时间;
     3.STARTPAGE=value:控制page breaks,默认值为YES,在PROC之间插入breaks;若为NO,则关闭breaks;若为NOW,则在那一刻插入break.
     4.STYLE=style-name:指定特定的style template,默认是RTF.

    五、ODS PRINTER/PCL/PDF/PS

     1 *Create the PDF files ;
     2 ODS PDF FILE='C:MyHTMLFILESMarine.pdf' STARTPAGE=NO;
     3 ODS NOPROCTITLE;
     4 DATA Marine;
     5 /*省略读入数据步骤*/
     9 RUN;
    10 PROC PRINT DATA=Marine;
    11 RUN;
    12 *CLOSE the PDF files;
    13 ODS PDF CLOSE;
    
    【OPTIONS】
    1. COLUMNS=n :分n栏输出
    2. STARTPAGE=VALUE: 同RTF;
    3.STYLE:默认是PRINTER.
  • 相关阅读:
    git ——visual studio code 工具之 Git Graph & git clone & git checkout
    docker中添加redis & 在程序中应用
    Configuring Redis for ASP.NET Core Session Store(转载)
    Configuring Redis Session State In ASP.NET Core(转载)
    http请求端口占用异常——处理思路
    在pods中添加有关httpclient的 压力测试 & 监控
    Singleton HttpClient? Beware of this serious behaviour and how to fix it
    HttpClient 之 CLOSE_WAIT
    HttpClient的使用
    HttpClient连接池之CLOSE_WAIT
  • 原文地址:https://www.cnblogs.com/chenyn68/p/3866796.html
Copyright © 2020-2023  润新知