ABSTRACT INTRODUCTION

Size: px
Start display at page:

Download "ABSTRACT INTRODUCTION"

Transcription

1 Automatically Output Rich Text Format Tables Using Dynamic Table Definitions in DATA _NULL_ Step Mei Tang, Ventana Clinical Research Corporation, Toronto, Ontario, Canada ABSTRACT This paper presents an automated approach to produce word processor ready tables using ODS option of FILE statement in DATA _NULL_ step to output tables to ODS RTF destination with customized table definitions. A macro with simple parameters is introduced to generate dynamic table definitions through PROC TEMPLATE according to different table structures. The use of such technique eliminates the need for manual word processing of SAS outputs, resulting in improving the quality and accuracy of reports, and conforming to FDA guidance. The approach is flexible, heuristic, and easy to modify with different layout standard. SAS version 8.2 for Windows environment is used for practice. Since the approach adopt pure SAS language, it is easy to learn by SAS programmers at different skill levels. INTRODUCTION There are too many reasons to keen on word processor ready tables, specifically Rich Text Format (RTF) tables, with nice table headers, footers and page numbers directly generated from SAS rather than plain text listings and tabulations. This becomes more desirable when we found tens or hundreds of tables need to be produced, maybe with different shapes, and maybe, make things worse, integrated with graphs to illustrate the same measurements. In order to avoid the tremendous work load of such tedious work as copying pasting the plaint text table into the statistical report, manually re-typing the table numbers, and putting the tables and graphs on the proper places, people are keeping on looking for innovative ways of transforming SAS generated tables into great looking documents with minimal word processing to save cost and resource, improve the quality and accuracy of the report, and conform to FDA guidance. There are a lot of smart and distinguished programmers generated creative SAS macros to write documents with RTF specification and can be read directly by word processor as matured tables. Peszek et al. presented a macro called %rtf that can be used within DATA _NULL_ step to provide full control over the table appearance with multiple calls. It can produce attractive word tables with much flexibility. But the extensive experience in the DATA _NULL_ step with PUT statements, the proficiency of RTF specification syntax, as well as the considerable programming effort, obscured the approach being implemented by an average SAS programmer especially under intensive timelines. With the introduction of the Output Delivery System (ODS) in version 7 of the SAS System, a convenient approach of getting RTF tables is available. A lot of programmers are using standard SAS procedures such as PROC REPORT, PROC PRINT, or PROC TABLULATE to write output directly to RTF files by defining ODS RTF destination. It is easy to accomplish, especially for the programmers who have been so familiar with the procedures for years. However, when output to rtf files, some of the preferable characteristics disappeared, such as controlling the page break during report generation, blank separator rows in the table etc. Moreover, the possibility of controlling the appearance of the table is very poor though tips of improving the appearance are introduced in several papers. The author propose here another way of taking full advantage of the convenience of ODS RTF destination, but more versatile and easy to implement, by calling a SAS macro with simple parameters to define dynamic table definitions in PROC TEMPLATE and using these definitions to output tables to ODS RTF destination with ODS option of FILE statement in DATA _NULL_ step. This approach can be used several times within the ODS RTF destination, together with other standard SAS procedures including PROC GPLOT or PROC GCHART for producing graphs. These characteristics of this approach make it very suitable for the scenario that different shapes of tables and graphs are integrated to demonstrate one measurement, and several measurements are sharing the same procedure of analysis. Sometimes, the appendix tables and graphs of a whole section of the analysis can be done using this approach, with little word processing works afterwards. The following text will describe the approach in the following four folds: A brief introduction of output tables to ODS destination in DATA _NULL_ statement. Tips of using customized style definition to optimize the appearance of the tables The idea of creating dynamic table definitions using SAS macro language and PROC TEMPLATE Examples of producing a table using the dynamic table definition Appendix A also contains the code of this macro and its specifications for macro parameters. CREATING OUTPUT AS RTF FILES USING ODS Generally, the traditional program output refers to the outcome of a SAS procedure step. Working in a windowing environment, the output is sent to Output window by default. One of the ways to send the output to a file is using PUT statement in DATA _NULL_ step with assigning a file name in FILE statement. The DATA _NULL_ approach has been widely used for plain text table producing and its flexible characteristics was well recognized among SAS programmers. With the development of the ODS, the ODS option in FILE statement provided in version 8 can specify using ODS to format the output from the DATA _NULL_ step. It defines the structure of the data component and binds that component to a table definition to produce an output object. ODS sends this object to all open ODS destinations, each of which formats the object appropriately. Using this approach, we have a chance to directly produce tables as Rich Text Format (RTF) files, and can easily integrate them into the statistical report that are by convention written using word processor. The main steps and syntaxes include: Define and open the ODS destination as RTF and give the name of the file that we are going to write to: ods rtf body='filename.rtf'; Producing table(s) from DATA _NULL_ step and send to RTF file data _null_; set dataset; file print ods <=(ODS suboptions)>; put _ods_; <other put statements>... run; Close the ODS RTF destination and finish writing to the file ods rtf close;

2 Above syntaxes show the simplest way of producing an rtf table using the rtf style and table definition that SAS provides by default. However, by little chance it will be what we want for the physical appearance. There are two ways to improve the appearance and attain the tables with pleasing appearance and ready to report. First, an option style= stylename offered in ODS RTF allow us using a customized style to write RTF files. Second, we can use template= templatename suboption in ODS option for FILE statement to ask SAS use a customized table definition that we defined beforehand. The following text will address both issues. USING STYLE CUSTOMIZATION TO GET TIDY APPEARANCE Most biostatisticians prefer tidy tables which less busy than the appearance of those using default style. A lot of papers addressed the ways of creating customized style by modifying default style definition using PROC TEMPLATE. Some of the tips we customized our rtf style definitions are listed as the following: top and the bottom of the table, the line under the column headers. If there are footers for the table, an extra line between the table body and the table footer will be generated. replace Table from Output/ rules = GROUPS frame = HSIDES Always set the table be as large as possible on the body size to ensure it be always on the center of the page. outputwidth=100%; run; proc template; define style customdefault; parent=styles.rtf; Using several replace statement, we made main changes including: Set the margins of the page into 1 inch in both direction: replace Body from Document "Set the margins into standard"/ bottommargin=1 in topmargin=1 in rightmargin=1 in leftmargin=1 in Set the background of the column headers into white instead of gray: replace color_list "Colors used in the default style"/ 'link'=blue 'bgh'=white 'fg'=black 'bg'=white; Change the shape and size of fonts to conform to our company standard replace fonts "Fonts used in the default style" / 'TitleFont2' = ("Arial, Helvetica, Helv",4,Bold Italic) /*change the font from size5, and delete italic*/ 'TitleFont' = ("Arial",3,Bold) /*get rid of italic for emphasis font*/ 'EmphasisFont' = ("Arial",3,Bold) /* change the font from Courier to Arial and change size to 2*/ 'FixedFont' = ("Arial",3) /*get rid of bold for headingfont */ 'headingfont' = ("Arial, Helvetica, Helv",3) Keeping less visible line borders for tables. No visible column borders are applied for all of the tables, and generally, there are only 3 lines left for the table: The DEFINING A DYNAMIC TABLE DEFINITION A table definition is a way that SAS offered to describe how to render the output for a tabular output object by using DEFINE TABLE statement in PROC TEMPLATE. It will be automatically stored in the template store located in SASUSER.TEMPLAT without specifying template store. One can also store the definitions in any template store that can be specified using PATH statement. The traits that are beneficial when we use table definition to produce tables includes: Repeatable. Stored in the template store, it can be easily applied for different data with the same tabulation structure Macro language friendly. With MVAR and NMVAR statement, one can easily define symbols that reference macro variables which are resolved when ODS binds the definition and the data component to produce an output object. Dynamic. Similar with MVAR and NMVAR, the DYNAMIC statement can define a symbol that references a value that the data component supplies from the DATA _NULL_ step. So we are given a chance to decide the exact value of a component, which in our case, the columns headers, only when tabulating the data. Generic. Collaborating with the GENERIC=ON in the ODS suboptions, multiple variables in the data sets can share the same definition of one column in table definition Before we give further endeavor of creating the macro generating dynamic table definitions, it is necessary to take a close study on the structure of typical statistical tables. Table 1 shows a complex enough table sample. It is a table template for demonstrating summary statistics of a measurement under certain comparison groups in a crossover study. The main purpose of this table is showing the statistics within 8 combined groups for the interactions among sexes, treatment A and treatment B. The column of Overall and two sexes are shown here for the purpose of comparison. The main body of a table is consisted as three parts: column headers, row headers, and the contents (the values in the data set). Usually, the structure of column headers is more complex than row headers to satisfy a nice appearance of a table. We can summarize the structure of column headers as hierarchy one. Hens the 12 columns of table1 can be put into four types: Column1:row headers Column2: column(s) with no hierarchical structure (Type I) Column3-Column4: columns with one level hierarchical structure (Type II)

3 Column5-Column12: columns with two level hierarchical structure (Type III) According to the definitions above, we can generate a general template for the column headers and footers for most of the statistical tables showed in Figure 1. More than two levels of hierarchic structure is not recommended since it will make tables messy and is suggested to split into two tables. When writing table definition, with GENERIC=ON option in both PROC TEMPLATE and ODS suboptions in DATA _NULL_ step, it is easy to duplicate new columns for the same structure as the previous one. So the only columns we need to define are those with macro symbols (in italic) shown Figure 1. No new column needs to be defined unless a new header emerged. In order to make the template more flexible, and can be easily modified according to different table structures, a macro summary were written using simple macro language to determine how many columns are needed in the template, the position of the grand header we want to place if exists, if there will be a specific footer (this is quite useful when we hope to present a simple referential statistics across different comparison groups) and its position, if a general note is required, and the width of the columns if a fixed width is demanded for the columns. The complete code of the macro and its specifications are listed in Appendix A. USING THE DYNAMIC TABLE DEFINITIONS TO PRODUCE TABLES The following examples illustrate the concept of using the dynamic table definition after getting the data set ready using regular SAS coding for analysis and data manipulation. The table definitions generated using %summary are listed in Appendix B, Table 1. A typical template for statistical tables Sex*(Treatment A)*(Treatment B) Overall Sex Males Females Males Females P_a & P_b P_a& E_b E_a& P_b E_a& E_b P_a & P_b P_a& E_b E_a& P_b E_a& E_b N Missing Mean STD Minimum Median Maximum LS mean SE Note: P_a: the placebo of treatment A E_a: the effective components of treatment A P_b: the placebo of treatment B E_b: the effective components of treatment B Figure 1: A general template for the column headers and footers with macro symbols for columns (in blue), headers (in red), and footers (in red). VAR Row headers Type I Type II Type III NAME1 NAME2 NAME3 NAME(n) NAME(n+1) NAME(n+2) Header1 HEADER HEADER GRAND HEADER Header2 Header3 Header(n) Grand CH CH CH CH CH CH HEADER HEADER CH CH CH CH NOTES Notes1 Notes1 Notes(n) FOOTER Footer DATA LINES

4 and their outputs can be found in Appendix C. The values of the data are simulated with no clinical meaning. Table 2: The Data Structure of the examples: COL1 COL2 COL3 COL4 COL5 COL6 COL7 COL8 COL9 col N Missing Mean COL Lsmean Stderr 3.52 * First example: The simplest table with no hierarchy structure; **********************************************; *************************************** * Step 1: Open the ODS RTF destination* ***************************************; ods rtf body='example_try.rtf' style=customdefault bodytitle; ************************************************ * Step 2: Call %summary to generate customized table definition* ***********************************************; %summary(col=1, footer=1, note=5); ************************************************ * Step 3: Producing table from DATA _NULL_ step and send to RTF file* ***********************************************; data _null_; * Title of the table; Title1 'Table 1. Summary Statistics of Heart Rate by 4 combination treatment groups'; Title2 '-- A simple table layout'; * No header in this case; call symput ('header1', ' '); * A line that simple inferential statistics may be presented; call symput ('footer', 'F=xx,xx, df=(x,xx), p=x.xxx'); * multiple lines of note presented in footer area; call symput ('note1', 'Note:'); call symput ('note2', 'P_a: the placebo of treatment A'); call symput ('note3', 'E_a: the effective components of treatment A'); call symput ('note4', 'P_b: the placebo of treatment B'); call symput ('note5', 'E_b: the effective components of treatment B'); set tabletext(where=(destinate=3)); columns= (var=col0 name1=col6(generic=on dynamic=(colheader='p_a & P_b')) name1=col7(generic=on dynamic=(colheader='p_a & E_b')) name1=col8(generic=on dynamic=(colheader='e_a & P_b')) name1=col9(generic=on dynamic=(colheader='e_a & E_b')) ) ); * Produce blank lines between the groups of statistics; if _n_=1 then put; if trim(col0)='mean' then put; if trim(col0)='lsmean' then put; put _ods_; run; *************************************** * Step 4: Open the ODS RTF destination* ***************************************; ods rtf close; ***********************************************; In step 2, by default, a column with the name VAR acting as a row header was defined in the DEFINE TABLE statement. With calling col=1, one extra column (TABLE_NAME1) with one header (TABLE_HEADER1) above was defined. Setting footer=1 and note=5 allow us to define 6 footers (with the name of TABLE_FOOTER, TABLE_NOTE1 to TABLE_NOTE5 respectively) to generate 6 lines of space to write the text afterwards. Within DEFINE TABLE statement, symbols for headers and footers were defined using MVAR statement to facilitate us using CALL SYMPUT to fill the text in when producing the table. They are shown on Figure 1 in red color. Each column defined from %summary (TABLE_NAME1 to TABLE_NAME(n)) are set GENERIC=on and given a dynamic symbol of the column header called COLHEADER. In the FILE PRINT ODS statement, the suboptions of ODS option should contain two parts: TEMPLATE= tells SAS using the template we just generated; COLUMN= assigns the variables in SAS data set to a specific column. In this example, please note with GENERIC=on option, 4 generic columns were generated using the same column name (NAME1), and entitled different column headers using dynamic symbol COLHEADER. Example 2 is a more complicated table with one level hierarchy structure. In order to generate the table definition which is suitable for the table, just call %summary with the parameters col=4. The table definition automatically generates 5 columns, with one VAR for row headers and 4 dynamic columns with one level header above. If there are columns without hierarchy structure in the table, simply define either its header or the column header as blank (here in column two, we define NAME1 as COLHEADER= ). width=6 defines each of the dynamic columns into a fixed width, with 6 characters length. By default, SAS will define the width of each column according to the maximized length of all values in the column. The code within the ODS RTF destination is listed below. * Second example: A table with one level hierarchy; %summary(col=4,width=6); file print ods=(template='summary' data _null_;

5 Title1 'Table 2. Summary Statistics of Heart Rate by two treatments and their 4 combination groups'; Title2 '-- A table with one level hierarchy structure'; call symput ('header1', 'Over all'); call symput ('header2', 'Treatment A'); call symput ('header3', 'Treatment B'); call symput ('header4', "(Treatment A)*(Treatment B)"); set tabletext(where=(destinate=3)); file print ods=(template='summary' ); columns=(var=col0 name1=col1(generic=on dynamic=(colheader=' ')) name2=col2(generic=on dynamic=(colheader='e_a')) name2=col3(generic=on dynamic=(colheader='p_a')) name3=col4(generic=on dynamic=(colheader='e_b')) name3=col5(generic=on dynamic=(colheader='p_b')) name4=col6(generic=on dynamic=(colheader='p_a& P_b')) name4=col7(generic=on dynamic=(colheader='p_a& E_b')) name4=col8(generic=on dynamic=(colheader='e_a& P_b')) name4=col9(generic=on if trim(col0)='mean' then put; if trim(col0)='lsmean' then put; put _ods_; run; dynamic=(colheader='e_a& E_b')) ) ***********************************************; Table 3 in Appendix C, which is the table template we mentioned before, is another complicated table that generated using this approach. The code is similar with previous two. The table definition was generated by calling %SUMMARY as: %summary(col=4,grand=3,note=5,width=4); By stating GRAND=3, a two level header is defined and begin at the third dynamic column. CONCLUSION The concern of producing statistical report tables not only lies in the complexity and the tremendous amount we need to deal with. It also lies in the fact that there are multiple ways of doing this, each of which has their own limitations. The reasonably versatility and feasibility for the approach we are providing here allows us to produce tidy statistical report tables with hierarchy structures that may cover most demands of reporting. The main part of this method is stored in macro with simple parameters that can be easily followed by junior level SAS programmers without necessary knowing the background of styles and table definitions. It also provides flexibilities to improve the appearance of the table using traditional PUT statement. For example, adding a blank separator row is just as easy as add one line code of if condition then put;. Through this paper, the author is trying to explore the accessibility of using dynamic table definitions for the automation process of generating statistical tables. The approach works efficiently and we believe, with the development of ODS RTF in Version 9, it will do even better job in the future. REFERENCES 1. Peszek I, Song C and Kuznetsova O, Producing Tabular Reports in SAS System in the Form of MS Word Tables; Proceedings of the PharmaSUG 99 Conference, Zhou J, Output Generating System A Tool for Creating Tables and Listings in Word; Proceedings of the SUGI Conference, Paper Hamilton P, ODS to RTF: Tips and Tricks; Proceedings of the PharmaSUG SAS Institute, The Complete Guide to the SAS Output Delivery System, Version 8 5. SAS Institute, SAS Language Reference: Dictionary, SAS OnlineDoc, Version 8 ACKNOWLEDGMENTS The author would like to acknowledge and thank Howard Kaplan and Lyndon Lacaya for their helps and endeavors in the exploration of the techniques presented in this paper, and their generosity in sharing their discoveries. The author also would like to take this change to express greatly appreciation to our Vise President Gale summer for her support and feedback. CONTACT INFORMATION (HEADER 1) (In case a reader wants to get in touch with you, please put your contact information at the end of the paper.) Your comments and questions are valued and encouraged. Contact the author at: Mei Tang Ventana Clinical Research Corporation 340 College Street, Suite 400 Toronto, Ontario, Canada M5T 3A9 Work Phone: (416) ext 327 Fax: (416) m.tang@ventana-crc.com Web: SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. indicates USA registration. APPENDIX A: -- MACRO %SUMMARY CODE AND SPECIFICATIONS options orientation=landscape; %macro summary(col=1,footer=0,grand=,note=0,width=); proc template; define table summary; mvar var_name %if %upcase(&grand) ne %then %do; grand

6 % %if %eval(&col)>0 %then %do; %do i=1 %to &col; header&i % % %if %eval(&footer)>0 %then %do; footer % %if %eval(&note)>0 %then %do; %do i=1 %to &note; note&i % % ; dynamic colheader; column var %if %eval(&col)>0 %then %do; %do i=1 %to &col; name&i % % ; header %if %upcase(&grand) ne %then %do; table_grand % %if %eval(&col)>0 %then %do; %do i=1 %to &col; table_header&i % % ; %if %eval(&footer+&note)>0 %then %do; footer %if %eval(&footer)>0 %then %do; table_footer % %if %eval(&note)>0 %then %do; %do i=1 %to &note; table_note&i % % ; % /*Table headers*/ %if %upcase(&grand) ne %then %do; define table_grand; start=name&grand; text grand; style=headeremphasis; % %if %eval(&col)>0 %then %do; %do i=1 %to &col; define table_header&i; start=name&i;end=name&i; text header&i; style=headeremphasis; % % /*table footers*/ %if %eval(&footer)>0 %then %do; define table_footer; start=name&footer; text footer; % %if %eval(&note)>0 %then %do; % %do i=1 %to &note; define table_note&i; start=var; text note&i; % /*table columns*/ define var; header=' '; flow=off; %if %eval(&col)>0 %then %do; % run; %m %do i=1 %to &col; define name&i; % %if %upcase(&width) ne %then %do; format_width=&width; %

7 Table 4. Explanation of the Macro Parameters in %SUMMARY(default values in parentheses) Parameter Type Restriction Description Col (=1) Integer >=1 The number of columns defined in table definition with generic=on. It also defines the number of one level headers Footer (=0) Integer >=0 but have to be smaller than the integer specified in col. The corresponding position of the footer to a specific column. There will be no such footer with this parameter absent or using default value Note (=0) Integer >=0 The number of lines for the general footer area. There will be no footer area with this parameter absent or using default value Grand Integer >=0 but have to be smaller than the integer specified in col. The corresponding position of the second level header to a specific column. There will be no such header with this parameter absent or specify as 0. Width Integer >=0 The width of the generic columns by number of character length. The length of the generic columns will be defined according to the maximum length of the values (including headers) in the column with this parameter absent APPENDIX B TABLE DEFINITIONS GENERATED BY %SUMMARY Example 1: proc template; define table summary; mvar var_name header1 footer note1 note2 note3 note4 note5 ; dynamic colheader; column var name1 ; header table_header1 ; footer table_footer table_note1 table_note2 table_note3 table_note4 table_note5 ; define table_header1; start=name1; end=name1; text header1; style=headeremphasis; define table_footer; start=name1; text footer; define table_note1; start=var; text note1; define table_note2; start=var; text note2; define table_note3; start=var; text note3; define table_note4; start=var; text note4; define table_note5; start=var; text note5; define var; header=' '; flow=off; define name1; Example 2: proc template; define table summary; mvar var_name header1 header2 header3 header4 ; dynamic colheader; column var name1 name2 name3 name4 ; header table_header1 table_header2 table_header3 table_header4 ; define table_header1;

8 start=name1; end=name1; text header1; style=headeremphasis; define table_header2; start=name2; end=name2; text header2; style=headeremphasis; define table_header3; start=name3; end=name3; text header3; style=headeremphasis; define table_header4; start=name4; end=name4; text header4; style=headeremphasis; define var; header=' '; flow=off; define name1; format_width=6; define name2; format_width=6; define name3; format_width=6; define name4; format_width=6; Example 3: proc template; define table summary; mvar var_name grand header1 header2 header3 header4 note1 note2 note3 note4 note5 ; name4 ; header table_grand table_header1 table_header2 table_header3 table_header4 ; dynamic colheader; column var name1 name2 name3 footer table_note1 table_note2 table_note3 table_note4 table_note5 ; define table_grand; start=name3; text grand; style=headeremphasis; define table_header1; start=name1; end=name1; text header1; style=headeremphasis; define table_header2; start=name2; end=name2; text header2; style=headeremphasis; define table_header3; start=name3; end=name3; text header3; style=headeremphasis; define table_header4; start=name4; end=name4; text header4; style=headeremphasis; define table_note1; start=var; text note1; define table_note2; start=var;

9 text note2; define table_note3; start=var; text note3; define table_note4; start=var; text note4; define table_note5; start=var; text note5; define var; header=' '; flow=off; define name1; format_width=4; define name2; format_width=4; define name3; format_width=4; define name4; format_width=4; APPENDIX C OUTPUT OF THE EXAMPLES

10

Data Presentation. Paper

Data Presentation. Paper Paper 116-27 Using SAS ODS to Enhance Clinical Data Summaries: Meeting esub Guidelines Steven Light and Paul Gilbert, DataCeutics, Inc. Kathleen Greene, Genzyme Corporation ABSTRACT SAS programmers in

More information

Tips and Tricks to Create In-text Tables in Clinical Trial Repor6ng Using SAS

Tips and Tricks to Create In-text Tables in Clinical Trial Repor6ng Using SAS Tips and Tricks to Create In-text Tables in Clinical Trial Repor6ng Using SAS By Rafi Rahi - by Murshed Siddick 1 Overview In-text tables in CTR Produc

More information

ODS for PRINT, REPORT and TABULATE

ODS for PRINT, REPORT and TABULATE ODS for PRINT, REPORT and TABULATE Lauren Haworth, Genentech, Inc., San Francisco ABSTRACT For most procedures in the SAS system, the only way to change the appearance of the output is to change or modify

More information

Quick Results with the Output Delivery System

Quick Results with the Output Delivery System Paper 58-27 Quick Results with the Output Delivery System Sunil K. Gupta, Gupta Programming, Simi Valley, CA ABSTRACT SAS s new Output Delivery System (ODS) opens a whole new world of options in generating

More information

Pros and Cons of Interactive SAS Mode vs. Batch Mode Irina Walsh, ClinOps, LLC, San Francisco, CA

Pros and Cons of Interactive SAS Mode vs. Batch Mode Irina Walsh, ClinOps, LLC, San Francisco, CA Pros and Cons of Interactive SAS Mode vs. Batch Mode Irina Walsh, ClinOps, LLC, San Francisco, CA ABSTRACT It is my opinion that SAS programs can be developed in either interactive or batch mode and produce

More information

QUERIES BY ODS BEGINNERS. Varsha C. Shah, Dept. of Biostatistics, UNC-CH, Chapel Hill, NC

QUERIES BY ODS BEGINNERS. Varsha C. Shah, Dept. of Biostatistics, UNC-CH, Chapel Hill, NC QUERIES BY ODS BEGINNERS Varsha C. Shah, Dept. of Biostatistics, UNC-CH, Chapel Hill, NC ABSTRACT This paper presents a list of questions often asked by those initially experimenting with ODS output. Why

More information

Running head: WORD 2007 AND FORMATING APA PAPERS 1. A Brief Guide to using Word 2007 to Format Papers in the Publication Style of the American

Running head: WORD 2007 AND FORMATING APA PAPERS 1. A Brief Guide to using Word 2007 to Format Papers in the Publication Style of the American Running head: WORD 2007 AND FORMATING APA PAPERS 1 A Brief Guide to using Word 2007 to Format Papers in the Publication Style of the American Psychological Association (6 th Ed.) Jeff Aspelmeier Department

More information

Formatting Highly Detailed Reports: Eye-Friendly, Insight-Facilitating

Formatting Highly Detailed Reports: Eye-Friendly, Insight-Facilitating L.Fine Formatting Highly Detailed Reports 1 Formatting Highly Detailed Reports: Eye-Friendly, Insight-Facilitating Lisa Fine, United BioSource Corporation Introduction Consider a highly detailed report

More information

Multiple Graphical and Tabular Reports on One Page, Multiple Ways to Do It Niraj J Pandya, CT, USA

Multiple Graphical and Tabular Reports on One Page, Multiple Ways to Do It Niraj J Pandya, CT, USA Paper TT11 Multiple Graphical and Tabular Reports on One Page, Multiple Ways to Do It Niraj J Pandya, CT, USA ABSTRACT Creating different kind of reports for the presentation of same data sounds a normal

More information

Exporting Variable Labels as Column Headers in Excel using SAS Chaitanya Chowdagam, MaxisIT Inc., Metuchen, NJ

Exporting Variable Labels as Column Headers in Excel using SAS Chaitanya Chowdagam, MaxisIT Inc., Metuchen, NJ Paper 74924-2011 Exporting Variable Labels as Column Headers in Excel using SAS Chaitanya Chowdagam, MaxisIT Inc., Metuchen, NJ ABSTRACT Excel output is the desired format for most of the ad-hoc reports

More information

Part 1. Introduction. Chapter 1 Why Use ODS? 3. Chapter 2 ODS Basics 13

Part 1. Introduction. Chapter 1 Why Use ODS? 3. Chapter 2 ODS Basics 13 Part 1 Introduction Chapter 1 Why Use ODS? 3 Chapter 2 ODS Basics 13 2 Output Delivery System: The Basics and Beyond Chapter 1 Why Use ODS? If all you want are quick results displayed to the screen or

More information

Paper PO07. %RiTEN. Duong Tran, Independent Consultant, London, Great Britain

Paper PO07. %RiTEN. Duong Tran, Independent Consultant, London, Great Britain Paper PO07 %RiTEN Duong Tran, Independent Consultant, London, Great Britain ABSTRACT For years SAS programmers within the Pharmaceutical industry have been searching for answers to produce tables and listings

More information

This paper describes a report layout for reporting adverse events by study consumption pattern and explains its programming aspects.

This paper describes a report layout for reporting adverse events by study consumption pattern and explains its programming aspects. PharmaSUG China 2015 Adverse Event Data Programming for Infant Nutrition Trials Ganesh Lekurwale, Singapore Clinical Research Institute, Singapore Parag Wani, Singapore Clinical Research Institute, Singapore

More information

Customized Flowcharts Using SAS Annotation Abhinav Srivastva, PaxVax Inc., Redwood City, CA

Customized Flowcharts Using SAS Annotation Abhinav Srivastva, PaxVax Inc., Redwood City, CA ABSTRACT Customized Flowcharts Using SAS Annotation Abhinav Srivastva, PaxVax Inc., Redwood City, CA Data visualization is becoming a trend in all sectors where critical business decisions or assessments

More information

Beginning Tutorials. bt006 USING ODS. Ban Chuan Cheah, Westat, Rockville, MD. Abstract

Beginning Tutorials. bt006 USING ODS. Ban Chuan Cheah, Westat, Rockville, MD. Abstract bt006 USING ODS Ban Chuan Cheah, Westat, Rockville, MD Abstract This paper will guide you, step by step, through some easy and not-so-easy ways to enhance your SAS output using the Output Delivery System

More information

Regaining Some Control Over ODS RTF Pagination When Using Proc Report Gary E. Moore, Moore Computing Services, Inc., Little Rock, Arkansas

Regaining Some Control Over ODS RTF Pagination When Using Proc Report Gary E. Moore, Moore Computing Services, Inc., Little Rock, Arkansas PharmaSUG 2015 - Paper QT40 Regaining Some Control Over ODS RTF Pagination When Using Proc Report Gary E. Moore, Moore Computing Services, Inc., Little Rock, Arkansas ABSTRACT When creating RTF files using

More information

PharmaSUG China 2018 Paper AD-62

PharmaSUG China 2018 Paper AD-62 PharmaSUG China 2018 Paper AD-62 Decomposition and Reconstruction of TLF Shells - A Simple, Fast and Accurate Shell Designer Chengeng Tian, dmed Biopharmaceutical Co., Ltd., Shanghai, China ABSTRACT Table/graph

More information

Square Peg, Square Hole Getting Tables to Fit on Slides in the ODS Destination for PowerPoint

Square Peg, Square Hole Getting Tables to Fit on Slides in the ODS Destination for PowerPoint PharmaSUG 2018 - Paper DV-01 Square Peg, Square Hole Getting Tables to Fit on Slides in the ODS Destination for PowerPoint Jane Eslinger, SAS Institute Inc. ABSTRACT An output table is a square. A slide

More information

HTML for the SAS Programmer

HTML for the SAS Programmer HTML for the SAS Programmer Lauren Haworth Kaiser Permanente Center for Health Research Portland, Oregon ½ ABSTRACT With more and more output being delivered via the Internet, a little knowledge of HTML

More information

An Introduction to PROC REPORT

An Introduction to PROC REPORT Paper BB-276 An Introduction to PROC REPORT Kirk Paul Lafler, Software Intelligence Corporation, Spring Valley, California Abstract SAS users often need to create and deliver quality custom reports and

More information

Overview 14 Table Definitions and Style Definitions 16 Output Objects and Output Destinations 18 ODS References and Resources 20

Overview 14 Table Definitions and Style Definitions 16 Output Objects and Output Destinations 18 ODS References and Resources 20 Contents Acknowledgments xiii About This Book xv Part 1 Introduction 1 Chapter 1 Why Use ODS? 3 Limitations of SAS Listing Output 4 Difficulties with Importing Standard Listing Output into a Word Processor

More information

Generating Customized Analytical Reports from SAS Procedure Output Brinda Bhaskar and Kennan Murray, RTI International

Generating Customized Analytical Reports from SAS Procedure Output Brinda Bhaskar and Kennan Murray, RTI International Abstract Generating Customized Analytical Reports from SAS Procedure Output Brinda Bhaskar and Kennan Murray, RTI International SAS has many powerful features, including MACRO facilities, procedures such

More information

IT S THE LINES PER PAGE THAT COUNTS Jonathan Squire, C2RA, Cambridge, MA Johnny Tai, Comsys, Portage, MI

IT S THE LINES PER PAGE THAT COUNTS Jonathan Squire, C2RA, Cambridge, MA Johnny Tai, Comsys, Portage, MI IT S THE LINES PER PAGE THAT COUNTS Jonathan Squire, C2RA, Cambridge, MA Johnny Tai, Comsys, Portage, MI ABSTRACT When the bodytitle option is used to keep titles and footnotes independent of the table

More information

ABSTRACT INTRODUCTION TRICK 1: CHOOSE THE BEST METHOD TO CREATE MACRO VARIABLES

ABSTRACT INTRODUCTION TRICK 1: CHOOSE THE BEST METHOD TO CREATE MACRO VARIABLES An Efficient Method to Create a Large and Comprehensive Codebook Wen Song, ICF International, Calverton, MD Kamya Khanna, ICF International, Calverton, MD Baibai Chen, ICF International, Calverton, MD

More information

SAS Online Training: Course contents: Agenda:

SAS Online Training: Course contents: Agenda: SAS Online Training: Course contents: Agenda: (1) Base SAS (6) Clinical SAS Online Training with Real time Projects (2) Advance SAS (7) Financial SAS Training Real time Projects (3) SQL (8) CV preparation

More information

%ANYTL: A Versatile Table/Listing Macro

%ANYTL: A Versatile Table/Listing Macro Paper AD09-2009 %ANYTL: A Versatile Table/Listing Macro Yang Chen, Forest Research Institute, Jersey City, NJ ABSTRACT Unlike traditional table macros, %ANTL has only 3 macro parameters which correspond

More information

Document Formatting and Page Layout

Document Formatting and Page Layout Word 2013 Document Formatting and Page Layout Introduction Instructional designers create a lot of documents such as job aids, training manuals, memos, and so forth. They do so using Word software. While

More information

Data Presentation ABSTRACT

Data Presentation ABSTRACT ODS HTML Meets Real World Requirements Lisa Eckler, Lisa Eckler Consulting Inc., Toronto, ON Robert W. Simmonds, TD Bank Financial Group, Toronto, ON ABSTRACT This paper describes a customized information

More information

ODS/RTF Pagination Revisit

ODS/RTF Pagination Revisit PharmaSUG 2018 - Paper QT-01 ODS/RTF Pagination Revisit Ya Huang, Halozyme Therapeutics, Inc. Bryan Callahan, Halozyme Therapeutics, Inc. ABSTRACT ODS/RTF combined with PROC REPORT has been used to generate

More information

Presentation Quality Bulleted Lists Using ODS in SAS 9.2. Karl M. Kilgore, PhD, Cetus Group, LLC, Timonium, MD

Presentation Quality Bulleted Lists Using ODS in SAS 9.2. Karl M. Kilgore, PhD, Cetus Group, LLC, Timonium, MD Presentation Quality Bulleted Lists Using ODS in SAS 9.2 Karl M. Kilgore, PhD, Cetus Group, LLC, Timonium, MD ABSTRACT Business reports frequently include bulleted lists of items: summary conclusions from

More information

Essential ODS Techniques for Creating Reports in PDF Patrick Thornton, SRI International, Menlo Park, CA

Essential ODS Techniques for Creating Reports in PDF Patrick Thornton, SRI International, Menlo Park, CA Thornton, S. P. (2006). Essential ODS techniques for creating reports in PDF. Paper presented at the Fourteenth Annual Western Users of the SAS Software Conference, Irvine, CA. Essential ODS Techniques

More information

Word processing software

Word processing software Unit 351 Word processing software UAN: Level: 3 Credit value: 6 GLH: 45 Y/502/4629 Assessment type: Portfolio of Evidence or assignment (7574 ITQ Users) Relationship to NOS: Assessment requirements specified

More information

Template Tidbits. Q How do I get the places I can enter copy to show up? (Highlight Fields Bar)

Template Tidbits. Q How do I get the places I can enter copy to show up? (Highlight Fields Bar) Template Tidbits This document is not intended to replace the individual guidance documents that accompany each template. Instead, it is a general document that addresses questions frequently asked by

More information

How to Create a Custom Style

How to Create a Custom Style Paper IS04 How to Create a Custom Style Sonia Extremera, PharmaMar, Madrid, Spain Antonio Nieto, PharmaMar, Madrid, Spain Javier Gómez, PharmaMar, Madrid, Spain ABSTRACT SAS provide us with a wide range

More information

Automate Clinical Trial Data Issue Checking and Tracking

Automate Clinical Trial Data Issue Checking and Tracking PharmaSUG 2018 - Paper AD-31 ABSTRACT Automate Clinical Trial Data Issue Checking and Tracking Dale LeSueur and Krishna Avula, Regeneron Pharmaceuticals Inc. Well organized and properly cleaned data are

More information

3. Formatting Documents

3. Formatting Documents 69 3. Formatting Documents The document format is the (highest) level of formatting for a Word document. It is important to select an attractive font and arrange the text in a balanced manner. A good page

More information

Using MACRO and SAS/GRAPH to Efficiently Assess Distributions. Paul Walker, Capital One

Using MACRO and SAS/GRAPH to Efficiently Assess Distributions. Paul Walker, Capital One Using MACRO and SAS/GRAPH to Efficiently Assess Distributions Paul Walker, Capital One INTRODUCTION A common task in data analysis is assessing the distribution of variables by means of univariate statistics,

More information

RWI not REI a Robust report writing tool for your toughest mountaineering challenges.

RWI not REI a Robust report writing tool for your toughest mountaineering challenges. Paper SAS2105 RWI not REI a Robust report writing tool for your toughest mountaineering challenges. Robert T. Durie SAS Institute ABSTRACT The degree of customization required for different kinds of reports

More information

DESCRIPTION OF THE PROJECT

DESCRIPTION OF THE PROJECT Skinning the Cat This Way and That: Using ODS to Create Word Documents That Work for You Elizabeth Axelrod, Abt Associates Inc., Cambridge, MA David Shamlin, SAS Institute Inc., Cary, NC ABSTRACT By supporting

More information

Figure 1. Table shell

Figure 1. Table shell Reducing Statisticians Programming Load: Automated Statistical Analysis with SAS and XML Michael C. Palmer, Zurich Biostatistics, Inc., Morristown, NJ Cecilia A. Hale, Zurich Biostatistics, Inc., Morristown,

More information

Creating a Newsletter

Creating a Newsletter Chapter 7 Creating a Newsletter In this chapter, you will learn the following to World Class standards: Setting the Margins Changing the Font and Font Size Inserting a Table Inserting a Picture Adding

More information

Why SAS Programmers Should Learn Python Too

Why SAS Programmers Should Learn Python Too PharmaSUG 2018 - Paper AD-12 ABSTRACT Why SAS Programmers Should Learn Python Too Michael Stackhouse, Covance, Inc. Day to day work can often require simple, yet repetitive tasks. All companies have tedious

More information

Making a SYLK file from SAS data. Another way to Excel using SAS

Making a SYLK file from SAS data. Another way to Excel using SAS Making a SYLK file from SAS data or Another way to Excel using SAS Cynthia A. Stetz, Acceletech, Bound Brook, NJ ABSTRACT Transferring data between SAS and other applications engages most of us at least

More information

Producing Summary Tables in SAS Enterprise Guide

Producing Summary Tables in SAS Enterprise Guide Producing Summary Tables in SAS Enterprise Guide Lora D. Delwiche, University of California, Davis, CA Susan J. Slaughter, Avocet Solutions, Davis, CA ABSTRACT This paper shows, step-by-step, how to use

More information

Formatting documents in Microsoft Word Using a Windows Operating System

Formatting documents in Microsoft Word Using a Windows Operating System Formatting documents in Microsoft Word Using a Windows Operating System 2017-07-20 Research & Scholarship, McLaughlin Library University of Guelph 50 Stone Road East Guelph, Ontario N1G 2W1 2 Contents

More information

Additional Support and Disability Advice Centre

Additional Support and Disability Advice Centre Additional Support and Disability Advice Centre GUIDELINES TO PRODUCING ACCESSIBLE WORD DOCUMENTS 1 INTRODUCTION As well as allowing adaptation of font, background colour and layout to suit personal preferences,

More information

WHAT ARE SASHELP VIEWS?

WHAT ARE SASHELP VIEWS? Paper PN13 There and Back Again: Navigating between a SASHELP View and the Real World Anita Rocha, Center for Studies in Demography and Ecology University of Washington, Seattle, WA ABSTRACT A real strength

More information

The Power of Combining Data with the PROC SQL

The Power of Combining Data with the PROC SQL ABSTRACT Paper CC-09 The Power of Combining Data with the PROC SQL Stacey Slone, University of Kentucky Markey Cancer Center Combining two data sets which contain a common identifier with a MERGE statement

More information

General Methods to Use Special Characters Dennis Gianneschi, Amgen Inc., Thousand Oaks, CA

General Methods to Use Special Characters Dennis Gianneschi, Amgen Inc., Thousand Oaks, CA General Methods to Use Special Characters Dennis Gianneschi, Amgen Inc., Thousand Oaks, CA ABSTRACT This paper presents three general methods to use special characters in SAS procedure output as well as

More information

Developing Graphical Standards: A Collaborative, Cross-Functional Approach Mayur Uttarwar, Seattle Genetics, Inc., Bothell, WA

Developing Graphical Standards: A Collaborative, Cross-Functional Approach Mayur Uttarwar, Seattle Genetics, Inc., Bothell, WA PharmaSUG 2014 - DG03 Developing Graphical Standards: A Collaborative, Cross-Functional Approach Mayur Uttarwar, Seattle Genetics, Inc., Bothell, WA ABSTRACT Murali Kanakenahalli, Seattle Genetics, Inc.,

More information

Setting the Percentage in PROC TABULATE

Setting the Percentage in PROC TABULATE SESUG Paper 193-2017 Setting the Percentage in PROC TABULATE David Franklin, QuintilesIMS, Cambridge, MA ABSTRACT PROC TABULATE is a very powerful procedure which can do statistics and frequency counts

More information

A Fully Automated Approach to Concatenate RTF outputs and Create TOC Zhiping Yan, Covance, Beijing, China Lugang Xie, Merck, Princeton, US

A Fully Automated Approach to Concatenate RTF outputs and Create TOC Zhiping Yan, Covance, Beijing, China Lugang Xie, Merck, Princeton, US PharmaSUG China 2015 - Paper 28X-B9F7B4B9P8 A Fully Automated Approach to Concatenate RTF outputs and Create TOC Zhiping Yan, Covance, Beijing, China Lugang Xie, Merck, Princeton, US ABSTRACT Statistical

More information

Creating Forest Plots Using SAS/GRAPH and the Annotate Facility

Creating Forest Plots Using SAS/GRAPH and the Annotate Facility PharmaSUG2011 Paper TT12 Creating Forest Plots Using SAS/GRAPH and the Annotate Facility Amanda Tweed, Millennium: The Takeda Oncology Company, Cambridge, MA ABSTRACT Forest plots have become common in

More information

SAMPLE PAPER FOR AN IGBR JOURNAL OR PROCEEDINGS PUBLICATION

SAMPLE PAPER FOR AN IGBR JOURNAL OR PROCEEDINGS PUBLICATION SAMPLE PAPER FOR AN IGBR JOURNAL OR PROCEEDINGS PUBLICATION John Smith, University of Abcdef ABSTRACT Each paper must start off with an abstract (with the exception of case studies). The abstract should

More information

A Macro to replace PROC REPORT!?

A Macro to replace PROC REPORT!? Paper TS03 A Macro to replace PROC REPORT!? Katja Glass, Bayer Pharma AG, Berlin, Germany ABSTRACT Some companies have macros for everything. But is that really required? Our company even has a macro to

More information

Table 1 in Scientific Manuscripts; Using PROC REPORT and the ODS System Carter Sevick, DoD Center for Deployment Health Research, San Diego, CA

Table 1 in Scientific Manuscripts; Using PROC REPORT and the ODS System Carter Sevick, DoD Center for Deployment Health Research, San Diego, CA Table 1 in Scientific Manuscripts; Using PROC REPORT and the ODS System Carter Sevick, DoD Center for Deployment Health Research, San Diego, CA ABSTRACT The ability to combine the power and flexibility

More information

Wolf EMR SMART Forms Course workbook

Wolf EMR SMART Forms Course workbook SMART Forms Workbook.book Page 1 Monday, October 26, 2015 11:44 AM Wolf EMR SMART Forms Course workbook Wolf EMR v2015.1.7 Issue 01.02 SMART Forms Workbook.book Page 2 Monday, October 26, 2015 11:44 AM

More information

Easing into Data Exploration, Reporting, and Analytics Using SAS Enterprise Guide

Easing into Data Exploration, Reporting, and Analytics Using SAS Enterprise Guide Paper 809-2017 Easing into Data Exploration, Reporting, and Analytics Using SAS Enterprise Guide ABSTRACT Marje Fecht, Prowerk Consulting Whether you have been programming in SAS for years, are new to

More information

SAS 9 Programming Enhancements Marje Fecht, Prowerk Consulting Ltd Mississauga, Ontario, Canada

SAS 9 Programming Enhancements Marje Fecht, Prowerk Consulting Ltd Mississauga, Ontario, Canada SAS 9 Programming Enhancements Marje Fecht, Prowerk Consulting Ltd Mississauga, Ontario, Canada ABSTRACT Performance improvements are the well-publicized enhancement to SAS 9, but what else has changed

More information

Indenting with Style

Indenting with Style ABSTRACT Indenting with Style Bill Coar, Axio Research, Seattle, WA Within the pharmaceutical industry, many SAS programmers rely heavily on Proc Report. While it is used extensively for summary tables

More information

Streamline Table Lookup by Embedding HASH in FCMP Qing Liu, Eli Lilly & Company, Shanghai, China

Streamline Table Lookup by Embedding HASH in FCMP Qing Liu, Eli Lilly & Company, Shanghai, China ABSTRACT PharmaSUG China 2017 - Paper 19 Streamline Table Lookup by Embedding HASH in FCMP Qing Liu, Eli Lilly & Company, Shanghai, China SAS provides many methods to perform a table lookup like Merge

More information

MS Word Professional Document Alignment

MS Word Professional Document Alignment MS Word Professional Document Alignment Table of Contents CHARACTER VS. PARAGRAPH FORMATTING...5 Character formatting...5 Paragraph Formatting...5 USING SHOW/HIDE TO REVEAL NON-PRINTING CHARACTERS...5

More information

Paper PO06. Building Dynamic Informats and Formats

Paper PO06. Building Dynamic Informats and Formats Paper PO06 Building Dynamic Informats and Formats Michael Zhang, Merck & Co, Inc, West Point, PA ABSTRACT Using the FORMAT procedure to define informats and formats is a common task in SAS programming

More information

Creating Booklets Using Microsoft Word 2013 on a PC

Creating Booklets Using Microsoft Word 2013 on a PC Creating Booklets Using Microsoft Word 2013 on a PC Booklets are a great way to collect information and graphic samples and format them in a user-friendly publication to share with others. Examples: Collect

More information

CSSSTYLE: Stylish Output with ODS and SAS 9.2 Cynthia L. Zender, SAS Institute Inc., Cary, NC

CSSSTYLE: Stylish Output with ODS and SAS 9.2 Cynthia L. Zender, SAS Institute Inc., Cary, NC CSSSTYLE: Stylish Output with ODS and SAS 9.2 Cynthia L. Zender, SAS Institute Inc., Cary, NC ABSTRACT It has become the standard for most company Web sites to use cascading style sheets (CSS) to standardize

More information

Part II: Creating Visio Drawings

Part II: Creating Visio Drawings 128 Part II: Creating Visio Drawings Figure 5-3: Use any of five alignment styles where appropriate. Figure 5-4: Vertical alignment places your text at the top, bottom, or middle of a text block. You could

More information

From Clicking to Coding: Using ODS Graphics Designer as a Tool to Learn Graph Template Language

From Clicking to Coding: Using ODS Graphics Designer as a Tool to Learn Graph Template Language MWSUG 2018 - SP-075 From Clicking to Coding: Using ODS Graphics Designer as a Tool to Learn Graph Template Language ABSTRACT Margaret M. Kline, Grand Valley State University, Allendale, MI Daniel F. Muzyka,

More information

Getting Up to Speed with PROC REPORT Kimberly LeBouton, K.J.L. Computing, Rossmoor, CA

Getting Up to Speed with PROC REPORT Kimberly LeBouton, K.J.L. Computing, Rossmoor, CA SESUG 2012 Paper HW-01 Getting Up to Speed with PROC REPORT Kimberly LeBouton, K.J.L. Computing, Rossmoor, CA ABSTRACT Learning the basics of PROC REPORT can help the new SAS user avoid hours of headaches.

More information

It s Proc Tabulate Jim, but not as we know it!

It s Proc Tabulate Jim, but not as we know it! Paper SS02 It s Proc Tabulate Jim, but not as we know it! Robert Walls, PPD, Bellshill, UK ABSTRACT PROC TABULATE has received a very bad press in the last few years. Most SAS Users have come to look on

More information

Making EXCEL Work for YOU!

Making EXCEL Work for YOU! Tracking and analyzing numerical data is a large component of the daily activity in today s workplace. Microsoft Excel 2003 is a popular choice among individuals and companies for organizing, analyzing,

More information

DOING MORE WITH WORD: MICROSOFT OFFICE 2013

DOING MORE WITH WORD: MICROSOFT OFFICE 2013 DOING MORE WITH WORD: MICROSOFT OFFICE 2013 GETTING STARTED PAGE 02 Prerequisites What You Will Learn USING MICROSOFT WORD PAGE 03 Viewing Toolbars Adding and Removing Buttons MORE TASKS IN MICROSOFT WORD

More information

Chapter 1 Introduction. Chapter Contents

Chapter 1 Introduction. Chapter Contents Chapter 1 Introduction Chapter Contents OVERVIEW OF SAS/STAT SOFTWARE................... 17 ABOUT THIS BOOK.............................. 17 Chapter Organization............................. 17 Typographical

More information

DOING MORE WITH WORD: MICROSOFT OFFICE 2010

DOING MORE WITH WORD: MICROSOFT OFFICE 2010 DOING MORE WITH WORD: MICROSOFT OFFICE 2010 GETTING STARTED PAGE 02 Prerequisites What You Will Learn USING MICROSOFT WORD PAGE 03 Viewing Toolbars Adding and Removing Buttons MORE TASKS IN MICROSOFT WORD

More information

Using PROC SQL to Generate Shift Tables More Efficiently

Using PROC SQL to Generate Shift Tables More Efficiently ABSTRACT SESUG Paper 218-2018 Using PROC SQL to Generate Shift Tables More Efficiently Jenna Cody, IQVIA Shift tables display the change in the frequency of subjects across specified categories from baseline

More information

Microsoft Word 2010 Tutorial

Microsoft Word 2010 Tutorial 1 Microsoft Word 2010 Tutorial Microsoft Word 2010 is a word-processing program, designed to help you create professional-quality documents. With the finest documentformatting tools, Word helps you organize

More information

Chapter 13 Working with Styles

Chapter 13 Working with Styles Getting Started Guide Chapter 13 Working with Styles Introduction to Styles in OpenOffice.org OpenOffice.org Copyright This document is Copyright 2005 2008 by its contributors as listed in the section

More information

Word Training - Maintaining Consistency Supporting Handout Designing Styles within a Word Template Version: Windows

Word Training - Maintaining Consistency Supporting Handout Designing Styles within a Word Template Version: Windows Word Training - Maintaining Consistency Supporting Handout Designing Styles within a Word Template Version: Windows 1. File > New > Blank Document 2. View styles pane in the Styles group Click the styles

More information

Using PROC TABULATE and ODS Style Options to Make Really Great Tables Wendi L. Wright, CTB / McGraw-Hill, Harrisburg, PA

Using PROC TABULATE and ODS Style Options to Make Really Great Tables Wendi L. Wright, CTB / McGraw-Hill, Harrisburg, PA Using PROC TABULATE and ODS Style Options to Make Really Great Tables Wendi L. Wright, CTB / McGraw-Hill, Harrisburg, PA ABSTRACT We start with an introduction to PROC TABULATE, looking at the basic syntax,

More information

An Efficient Method to Create Titles for Multiple Clinical Reports Using Proc Format within A Do Loop Youying Yu, PharmaNet/i3, West Chester, Ohio

An Efficient Method to Create Titles for Multiple Clinical Reports Using Proc Format within A Do Loop Youying Yu, PharmaNet/i3, West Chester, Ohio PharmaSUG 2012 - Paper CC12 An Efficient Method to Create Titles for Multiple Clinical Reports Using Proc Format within A Do Loop Youying Yu, PharmaNet/i3, West Chester, Ohio ABSTRACT Do you know how to

More information

TIPS FOR WORKING WITH THE HONORS COLLEGE SENIOR PROJECT TEMPLATE

TIPS FOR WORKING WITH THE HONORS COLLEGE SENIOR PROJECT TEMPLATE TIPS FOR WORKING WITH THE HONORS COLLEGE SENIOR PROJECT TEMPLATE There are several issues that arise when using the Honors College Senior Project Template. Most common are formatting tabs, margins, and

More information

Paper CC01 Sort Your SAS Graphs and Create a Bookmarked PDF Document Using ODS PDF ABSTRACT INTRODUCTION

Paper CC01 Sort Your SAS Graphs and Create a Bookmarked PDF Document Using ODS PDF ABSTRACT INTRODUCTION Paper CC01 Sort Your SAS Graphs and Create a Bookmarked PDF Document Using ODS PDF Dirk Spruck, Accovion GmbH, Marburg, Germany Monika Kawohl, Accovion GmbH, Marburg, Germany ABSTRACT Graphs are a great

More information

Preparing the Office of Scientific Investigations (OSI) Requests for Submissions to FDA

Preparing the Office of Scientific Investigations (OSI) Requests for Submissions to FDA PharmaSUG 2018 - Paper EP15 Preparing the Office of Scientific Investigations (OSI) Requests for Submissions to FDA Ellen Lin, Wei Cui, Ran Li, and Yaling Teng Amgen Inc, Thousand Oaks, CA ABSTRACT The

More information

Six Cool Things You Can Do In Display Manager Jenine Milum, Charlotte, NC Wachovia Bank

Six Cool Things You Can Do In Display Manager Jenine Milum, Charlotte, NC Wachovia Bank Paper CC-029 Six Cool Things You Can Do In Display Manager Jenine Milum, Charlotte, NC Wachovia Bank ABSTRACT Many people use Display Manager but don t realize how much work it can actually do for you.

More information

Getting Started Guide. Chapter 3 Using Styles and Templates

Getting Started Guide. Chapter 3 Using Styles and Templates Getting Started Guide Chapter 3 Using Styles and Templates Copyright This document is Copyright 2010 2013 by its contributors as listed below. You may distribute it and/or modify it under the terms of

More information

Tweaking your tables: Suppressing superfluous subtotals in PROC TABULATE

Tweaking your tables: Suppressing superfluous subtotals in PROC TABULATE ABSTRACT Tweaking your tables: Suppressing superfluous subtotals in PROC TABULATE Steve Cavill, NSW Bureau of Crime Statistics and Research, Sydney, Australia PROC TABULATE is a great tool for generating

More information

DOING MORE WITH WORD: MICROSOFT OFFICE 2007

DOING MORE WITH WORD: MICROSOFT OFFICE 2007 DOING MORE WITH WORD: MICROSOFT OFFICE 2007 GETTING STARTED PAGE 02 Prerequisites What You Will Learn USING MICROSOFT WORD PAGE 03 Viewing Toolbars Adding and Removing Buttons MORE TASKS IN MICROSOFT WORD

More information

Let Hash SUMINC Count For You Joseph Hinson, Accenture Life Sciences, Berwyn, PA, USA

Let Hash SUMINC Count For You Joseph Hinson, Accenture Life Sciences, Berwyn, PA, USA ABSTRACT PharmaSUG 2014 - Paper CC02 Let Hash SUMINC Count For You Joseph Hinson, Accenture Life Sciences, Berwyn, PA, USA Counting of events is inevitable in clinical programming and is easily accomplished

More information

Integrated Cloud Environment Bates Stamping User s Guide

Integrated Cloud Environment Bates Stamping User s Guide Integrated Cloud Environment Bates Stamping User s Guide 2017 RICOH USA, INC. R I C O H U S A, I N C It is the reader's responsibility when discussing the information contained this document to maintain

More information

Anyone Can Learn PROC TABULATE, v2.0

Anyone Can Learn PROC TABULATE, v2.0 Paper 63-25 Anyone Can Learn PROC TABULATE, v2.0 Lauren Haworth Ischemia Research & Education Foundation San Francisco ABSTRACT SAS Software provides hundreds of ways you can analyze your data. You can

More information

%MAKE_IT_COUNT: An Example Macro for Dynamic Table Programming Britney Gilbert, Juniper Tree Consulting, Porter, Oklahoma

%MAKE_IT_COUNT: An Example Macro for Dynamic Table Programming Britney Gilbert, Juniper Tree Consulting, Porter, Oklahoma Britney Gilbert, Juniper Tree Consulting, Porter, Oklahoma ABSTRACT Today there is more pressure on programmers to deliver summary outputs faster without sacrificing quality. By using just a few programming

More information

Quality Control of Clinical Data Listings with Proc Compare

Quality Control of Clinical Data Listings with Proc Compare ABSTRACT Quality Control of Clinical Data Listings with Proc Compare Robert Bikwemu, Pharmapace, Inc., San Diego, CA Nicole Wallstedt, Pharmapace, Inc., San Diego, CA Checking clinical data listings with

More information

Part 1. Getting Started. Chapter 1 Creating a Simple Report 3. Chapter 2 PROC REPORT: An Introduction 13. Chapter 3 Creating Breaks 57

Part 1. Getting Started. Chapter 1 Creating a Simple Report 3. Chapter 2 PROC REPORT: An Introduction 13. Chapter 3 Creating Breaks 57 Part 1 Getting Started Chapter 1 Creating a Simple Report 3 Chapter 2 PROC REPORT: An Introduction 13 Chapter 3 Creating Breaks 57 Chapter 4 Only in the LISTING Destination 75 Chapter 5 Creating and Modifying

More information

There s No Such Thing as Normal Clinical Trials Data, or Is There? Daphne Ewing, Octagon Research Solutions, Inc., Wayne, PA

There s No Such Thing as Normal Clinical Trials Data, or Is There? Daphne Ewing, Octagon Research Solutions, Inc., Wayne, PA Paper HW04 There s No Such Thing as Normal Clinical Trials Data, or Is There? Daphne Ewing, Octagon Research Solutions, Inc., Wayne, PA ABSTRACT Clinical Trials data comes in all shapes and sizes depending

More information

ABSTRACT INTRODUCTION MACRO. Paper RF

ABSTRACT INTRODUCTION MACRO. Paper RF Paper RF-08-2014 Burst Reporting With the Help of PROC SQL Dan Sturgeon, Priority Health, Grand Rapids, Michigan Erica Goodrich, Priority Health, Grand Rapids, Michigan ABSTRACT Many SAS programmers need

More information

The REPORT Procedure CHAPTER 32

The REPORT Procedure CHAPTER 32 859 CHAPTER 32 The REPORT Procedure Overview 861 Types of Reports 861 A Sampling of Reports 861 Concepts 866 Laying Out a Report 866 Usage of Variables in a Report 867 Display Variables 867 Order Variables

More information

Excel Level 1: Beginner. Get started in Excel. Look good with easy formatting. Set out your first Excel calculations. Increase your efficiency

Excel Level 1: Beginner. Get started in Excel. Look good with easy formatting. Set out your first Excel calculations. Increase your efficiency Excel 2010 Level 1: Beginner Learning basic skills for Excel 2010 Estimated time: 04:05 6 modules - 49 topics Get started in Excel Discover Excel and carry out simple tasks: opening a workbook saving it,

More information

A Macro to Manage Table Templates Mark Mihalyo, Community Care Behavioral Health Organization, Pittsburgh, PA

A Macro to Manage Table Templates Mark Mihalyo, Community Care Behavioral Health Organization, Pittsburgh, PA A Macro to Manage Table Templates Mark Mihalyo, Community Care Behavioral Health Organization, Pittsburgh, PA ABSTRACT The scenario: Data must be placed in a table or chart design provided by the company

More information

Microsoft Word Tutorial

Microsoft Word Tutorial Microsoft Word Tutorial 1 GETTING STARTED Microsoft Word is one of the most popular word processing programs supported by both Mac and PC platforms. Microsoft Word can be used to create documents, brochures,

More information

ODS LAYOUT is Like an Onion

ODS LAYOUT is Like an Onion Paper DP03_05 ODS LAYOUT is Like an Onion Rich Mays, University of Rochester Medical Center, Rochester, NY Abstract ODS LAYOUT is like an onion. They both make you cry? No! They both have layers! In version

More information

Applications Development. Paper 24-27

Applications Development. Paper 24-27 Paper 24-27 Optimizing SAS Version 8 in a Windows Environment from the User Interface to Automated Document Production Roger D. Muller, Ph.D., Elanco Animal Health, Indianapolis, IN ABSTRACT The Microsoft

More information