HOME QUICK SEARCH AUTHORS KEYWORDS HELP BUGS

PNWSUG 2005 Papers - Index

25 papers. Source: PNWSUG (Pacific Northwest SAS Users Group) conference proceedings.

# Title
×
Authors
×
Abstract
×
Keywords
×
Extras Pages
1 %SYSFUNC: Extending the SAS Macro Language Paul D. Hamilton This class will introduce the power that SYSFUNC brings to developing SAS macros. Anyone who struggles with developing SAS macros in order to extend the power and ease of use of the SAS system should be aware of the myriad DATA STEP and SCL functions that the SYSFUNC facility makes available. In the original design of the SAS system, the Data and PROC steps performed useful work, and the macro language provided a way to construct and manipulate various SAS statements. However, the macro language itself was developed with a very limited tool set. With the advent of SYSFUNC, most of the power of the DATA STEP function library, and the more extensive set of functions available in SCL have become available. This allows the macro language itself to express real power in providing solutions to everyday problems faced by virtually all users of the SAS system macro function, macro variable, macro facility, proc step, macro put, data step, macro loop, sysrc, sysdate9, macro definition, sas programmer, do loop, sas base, format statement, put statement, macro conditional 16
2 (In)Formats (In)Decently Exposed Harry Droogendyk If you've pulled data into SAS or pushed it out the other end you have used SAS informats and formats, really. Didn't hurt a bit did it? There's nothing to be afraid of, formats are really quite helpful little beasts. If you've been intimidated or confused by SAS formats, come along for a revealing ride as the shadowy side of data formatting is decently exposed. Learn how many data conversion and presentation issues are easily handled, whether the data be dates, times, numbers or strings. Don't avert your eyes, discover the power, efficiency and freedom of SAS formats, you'll never be the same user-defined format, proc print, date variable, sysdate9, data step, dataset, proc step, format statement, input statement, proc format, put statement, e., numeric variable, excel, proc sql 16
3 A Data Quality Community of Practice Donnalee Brown Communities of Practice (CoP) are a means by which disparate companies, departments, divisions, and functional areas can share ideas, experiences, and knowledge on a particular area of interest. If this is an intra-company CoP and is corporate-sanctioned, then the area of interest would logically be one that pertains to or would benefit the company goals. However, communities may also expand to include other companies and/or organizations, depending on the focus area. This paper will discuss data quality and Communities of Practice in general but focus primarily on the Data Quality Community of Practice and how having one at your company might provide benefits to your company, your customers, and yourself data cleaning, business intelligence 8
4 A Peek at PROC DOCUMENT Andrew H. Karp This document copyright 2003 Sierra Information Services, Inc. and may not be reproduced without the express written consent of the copyright holder. SAS is a registered trademark of SAS Institute, Inc. in the USA and other countries. indicates USA registration. 1 A Peek at proc step, output delivery system, sas 9, logistic distribution, sas output 25
5 A Sort of a Mess - Sorting Large Datasets on Multiple Keys David L. Cassell One of the most useful features of SAS is its capabilities for handling large datasets. However, a sort of a very large dataset on many keys can present difficulties. Disk space or temporary space may be inadequate. The time needed may be enormous. The approach taken may overwhelm the software or the operating system. This talk covers multiple ways to sort on a large dataset with many sort- keys, pointing out some advantages and tradeoffs of techniques proc step, proc sort, proc sql, cpu time, sorted data, sample 4
6 An Introduction to SQL in SAS Peter J. Lund SQL is one of the many languages built into the SAS System. Using PROC SQL, the SAS user has access to a powerful data manipulation and query tool. Topics covered will include selecting, subsetting, sorting and grouping data--all without use of DATA STEP code or any procedures other than PROC SQL. 22
7 Assessing Within- and Between-Subject Effects with Correlated Clinical Data Marla J. Husnik,
Eugene Huang,
Grant Colfax
Various statistical methods can be used to analyze correlated data from a clinical study. At baseline of the EXPLORE study, a multi-site HIV prevention clinical trial conducted in the U.S., data from the most recent sexual episode with up to three of the most recent partners were collected. We were interested in the relationship between substance use and risky sexual behavior. To address the within-individual effects, we first used non-linear mixed models (PROC NLMIX) and found computational difficulties. Then, we used conditional logistic regression (PROC PHREG) for the within-individual effects, and generalized estimating equations (PROC GENMOD) for the between-individual effects. In this paper, we show examples of these techniques using SAS and compare the methods conditional logistic regression, logistic distribution, logistic regression, proc step, regression analysis, proc mixed, proc genmod, proc phreg, generalized estimating equations, binary variable, sas syntax, correlation, binomial distribution, proc freq, macro definition 10
8 Boost Your Programming Productivity with SAS Enterprise Guide Chris Hemedinger SAS Enterprise Guide (with its easy-to-use interface) has been a boon to SAS users, especially non-programmers. However, SAS Enterprise Guide provides some powerful new features that are geared toward the SAS programmer, including an integrated process-flow view of your project; the ability to create, publish, and execute stored processes; and increased flexibility for output format and des tination with the SAS Output Delivery System (ODS). This paper provides an overview and detailed examples of how SAS programmers can leverage SAS Enterprise Guide to create, organize, and execute their SAS programs sas enterprise guide, sas enterprise guide project, macro variable, sas programmer, sas programming, bar chart 9
9 Building and Using Macro Libraries Arthur L. Carpenter While many users take advantage of the SAS Macro Language, few take full advantage of its capabilities to build and maintain libraries of macros. Management of large numbers of macros can be problematic. Names and locations must be remembered, changes must be managed, duplication and variations of individual macros must be monitored, and efficiency issues must be taken into consideration. These problems come even more to the forefront when macros are shared among programmers - especially in a networked environment. Macro libraries allow you to control and manage the proliferation of your macros. Libraries can consist of a formal use of the %INCLUDE statement, a group of programs defining macros that can be automatically called, or even collections of macros that were previously compiled and then stored. Macro libraries are extremely useful, and not really all that complicated. If you are not currently using them as part of your macro programming efforts, read on! macro definition, stored macro, autocall macro, options statement 7
10 Data Step Hieroglyphics Harry Droogendyk Have you found that most SAS DATA STEP code is quite readable? SAS statements, functions, keywords and SI supplied routines are most often given meaningful names. If the developer has been even somewhat verbose while naming DATA STEP variables, the final product can "read" quite easily. Sure it reads easy …, until you encounter the {*&%~(.:@|? special characters littered throughout the code!! What in the world do those things mean? Do we really need the funny characters? This paper will examine 10 implementations of special characters, each of them specially placed in the SAS language for your coding pleasure. Special characters, properly utilized, allow you to write code more quickly, more efficiently, and, believe or not, more simply data step, macro variable, input statement, &variable, character variable, do over, macro definition, options statement, trailing @ 10
11 Delivering Dynamic Content with the SAS Stored Process Web Application Frederick E. Pratter Many Web developers have been moving away from th e CGI technology that was the basis for SAS/INTRNET toward Microsoft .NET or cross-platform Java Web applications. The SAS Stored Process Web Application , new in Version 9, can be used by developers with little or no Java programming experien ce; under some circumstances it can be used as a replacement for SAS/INTRNET. This paper will introduce SAS Stored Processes, show how they may be accessed from another application, such as Enterprise Guide and the Stored Process Web Application, and demonstrate a sample Web Application sas enterprise guide, sas management console, sample 17
12 Extreme Graphics Make Over: Using SAS/GRAPH to Get the Graphical Output You Need Miriam G. Cisternas,
Arthur L. Carpenter
Back in the days of the mainframe, creating presentation quality graphs was a challenge, but with the current versions of SAS/GRAPH customizing your graphical output can be quite easy. Easy that is, once you know which of the many graphical statements and options to use. This workshop will introduce you to those statements and options. Through a series of exercises we will show you how you can dress up your GPLOT graphs. You will quickly learn how to customize titles, footnotes, axes, and plotting symbols, as well as how to add reference lines, legends and notes to highlight specific messages in your data. You will also gain an understanding of how specific GOPTIONS and global statement options interact to create your finished product proc gplot, proc step, sas base, footnote statement, options statement, run, randomization 16
13 How to Make ODS Statistical Graphics Work for You Andrew H. Karp Presentation proc step, proc reg, output delivery system, sas 9, sas output, confidence interval 48
14 MODIFY The Most Under-Appreciated of the Data Step File Handling Statements Curtis E. Mack The MODIFY statement has been part of the SAS set of tools for years, yet it is rarely used. Good programmers have written very complicated code to accomplish that what be done very readily using this statement. It allows changing of a SAS dataset in place using a DATA STEP, without creating a new or replacement dataset. If used correctly, it is faster and more straight-forward than alternatives techniques using SQL. As a result it is indispensable when working in a relational database, be it implemented in SAS or another DBMS. This paper will discuss some of its syntax and uses, focusing on its use as a batch transaction processing tool. It will also detail some of the SAS Access components and options that can enhance its functionality against a non-SAS DBMS. An Introduction to MODIFY MODIFY is a file-handling statement like SET, MERGE, and UPDATE. These statements read input datasets into the DATA STEP data vector. Datasets are any data type members of a SAS library modify statement, by group processing, dataset, proc sql, set statement, unique key, foreign key, out=, temporary dataset, infile statement, constraint, key=, key, sysrc, reject records, update statement 12
15 Moving XML Files within SAS and Maintaining Segment Hierarchy Sarmad Pirzada With XML becoming a standard for neutral data exchange medium, SAS V9 offers the XML LIBNAME engine and SAS XML Mapper for moving XML data into SAS. Although the Mapper allows an efficient way of developing a map file for importing the multiple hierarchies in XML files, exporting a schema- dependent XML file is a challenge. We have used PROC TEMPLATE to export XML files back in the same schema it was imported in. This has allowed us to move data back to XML multiple-level hierarchy after SAS transformations. We also explored other options available to a SAS programmer libname engine, data cleaning, proc step, proc template, ods xml 6
16 Ms Access Macro Makes SAS Easy For You, For Everyone Didi Gong,
Shirley Zhang
This paper introduces an application that utilizes MS Access macros to leverage the power of SAS. The discussion on various user interfaces for SAS can be complex. With simplicity in mind, we focus on the easy-to-follow techniques that can be applied immediately to organizations' on-going business to free SAS analysts from requests of repetitive reports and achieve efficiency. Designed as a point-and-click tool to empower business users, it does not require manipulation of SAS codes. Real-world examples will be used in the demo, including direct marketing campaign evaluation, customer profile, and financial KPI analysis. excel, oracle 7
17 ODS to RTF: Tips and Tricks Paul D. Hamilton Since the introduction of the ODS RTF destination, traditional character-based displays of tables and listings are passé. The new capabilities also bring new tribulations as the pharmaceutical community strives to produce high quality statistical reports, maximizing the amount of information on a page, while still conforming to FDA guidance. This paper examines some obscure ODS to RTF formatting tricks available by getting creative with SAS version 8.2. Topics covered include selective bolding and graying of data values, insertion of blank separator rows, selective graying of report rows, management of widow and orphan data lines, control of table cell widths and heights, font control, and selecting and displaying special characters (footnote notations, scientific and mathematical symbols, typography characters) proc report, proc step, character variable, numeric variable, adverse events, proc template, proc sort, macro loop, %if-%then-%else, macro definition 9
18 PDF Can be Pretty Darn Fancy: Tips and Tricks for the ODS PDF Destination Peter J. Lund We're not too far removed from the days when presentation-ready SAS output meant lots of cutting and pasting or retyping. Now, the ODS PDF destination enables you to produce high quality output the first time, without other tools or applications. This paper explores a number of ODS options in general and, more specifically, their use in creating PDF output. We will cover ODS ESCAPECHAR, which allows for inline formatting of titles, footnotes and other text; ODS LAYOUT, which lets you place output wherever you want it on the page - even output from more than one procedure; inline formatting in PROC REPORT; overlaying output from SAS/GRAPH procedures on top of other output and more. We'll work from real life examples and see how you can produce output that looks like it took hours to create proc step, proc report, ods pdf, footnote statement, output delivery system, proc sql 19
19 PRX Functions and CALL Routines David L. Cassell With the advent of SAS 9, the power of Perl's regular expressions is now available in the DATA STEP. The PRX functions and call routines enable you to use the pattern matching features of Perl 5.6.1 to search for patterns in text, to save information about matching patterns, and to substitute new forms for the matched patterns. The PRX functions are invaluable for all manner of text manipulation, including validation, text replacement, and string testing. In this workshop, you will learn: how to use Perl regular expressions in the DATA STEP; how to write SAS code to access the PRX functions and CALL routines; how to write some simple Perl regular expressions; how to use these Perl regular expressions to search for text and replace text. Familiarity with the DATA STEP is required. No prior knowledge of Perl is needed, but it won't hurt. sas 9, prxchange, prxparse, variable, prxmatch, data cleaning 15
20 SAS Enterprise Guide for the MBA Student-No Longer a Hard Sell Melvin Ott SAS Programming for business students has long been a hard sell. Learning to run the statistical procedures requires that they also learn to do some programming. Loading their data to a SAS dataset can easily cause them to give up. And, writing SQL and DATA STEP programming leaves them cold. Or, the greatest frustration of all, "Why doesn't SAS just tell us when we forget a semicolon?" As a result, they turn to Spreadsheets that will not handle large files. Or, they learn SPSS, but don't have the full functionality for data handling that SAS gives them. Either of these choices seems a weakening of their future skills. However, SAS Institute has recently supplied a new product called Enterprise Guide that allows the business student to take advantage of the full functionality of a robust statistical software package with a fairly reasonable learning curve sas enterprise guide, data science, regression analysis 4
21 SAS with Style: Creating your own ODS Style Template for RTF Output Lauren E. Haworth Once you've started using the Output Delivery System, you'll quickly discover that your taste in output design probably doesn't coincide with the built in ODS styles shipped with SAS software. While you can edit your RTF output in Word to improve its appearance, a better approach is to create your own style template. This workshop will take you step by step through the process of creating a custom style for your RTF output. You'll learn how to make minor modifications, and how to give your output a complete makeover. If you'd like all of your SAS output to be in hot pink with a gi gantic script font, this workshop will sh ow you how! Or, if you'd just like to use fonts and borders that c oordinate with your corporate style guidelines , you can do that too. The workshop will also provide tips and tricks for taking advantage of the RTF des tination, includin g the generation of custom page numbers and page breaks sample, proc step, proc template, ods rtf, footnote statement, proc report, title statement, output delivery system, options statement 20
22 So You Want to Be a Manager? - A Panel Discussion On Issues to Consider Before Aiming for a Management Career Path Stephen M. Noga,
Lauren E. Haworth,
Andrew T. Kuligowski
Are you thinking your next career move should be moving into a management position? Have you thought through all the pros and cons? This panel discussion will give you some things to think about before making that decision. The panelists have had different experiences. One panelist moved into management - and then moved out of management. Another juggles management responsibilities with coding responsibilities. The other panelist focuses on managing people and projects. The panelists will share their experiences and provide an opportunity for you to ask questions sas programmer, data step 8
23 Table Lookups: From IF-THEN to Key-Indexing Arthur L. Carpenter One of the more commonly needed operations within SAS programming is to determine the value of one variable based on the value of another. A series of techniques and tools have evolved over the years to make the matching of these values go faster, smoother, and easier. A majority of these techniques require operations such as sorting, searching, and comparing. As it turns out, these types of techniques are some of the more computationally intensive, and consequently an understanding of the operations involved and a careful selection of the specific technique can often save the user a substantial amount of computing resources. This workshop will demonstrate, compare, and contrast the following techniques: IF-THEN, IF-THEN-ELSE, SELECT, user defined formats (PUT function), MERGE, SQL joins, merging with two SET statements, using the KEY= option, use of ARRAYS, and Key-Indexing proc sql, by group processing, lookup, proc step, merge statement, data merging, if-then-else, put statement, set statement, dataset, key=, cpu time, select 10
24 The Wealth of Information Found in the SASHELP Data Dictionary Views and How to Use It Curtis E. Mack The SAS data dictionary views that can be found in the SASHELP library provide a wealth of information that programmers can use to create code that reacts to its environment and the data available. This paper will give a description of those views and give several real world examples of code that makes use of this information macro variable, proc sql, proc step, data dictionary, options statement, sashelp, macro function, sample 9
25 Using Datastep programming and Proc SQL in SAS To calculate daily hospital occupancy Renu Gehring,
Rajiv Sharma
This paper describes the advantages and disadvantages of two distinct approaches to computing hospital daily occupancy in large datasets. The first approach employs an incremental method for computing occupancy. Initial occupancy is calculated by using the SQL procedure and then a Retain statement in a datastep creates a running sum of daily occupancy. The second approach uses a data expansion technique; A do loop in a datastep converts the patient level data to patient-day grain. After the data is expanded, dummy (zero/one) variables are created to indicate whether a patient has been admitted, discharged, or is currently in the hospital on a given day. The counter variables for admissions, discharges, and current occupancy are summed to create a daily tabulation of hospital census, discharges, and admissions. Although both approaches yield similar results in the absence of data quality issues, they are quite different in their logic and programming technique data cleaning, proc sql, create table, proc step, sample 11

Back to Conf go 2006 go 2004

This site serves as a convenient hosting location and does not work as a publisher. All copyrights belong to their respective owners.

The information on this site is provided for general reference purposes only. Whilst every effort is made to ensure that the site is up to date and accurate, no warrant, nor any responsibility or liability for, the accuracy or completeness of the content or for any loss which may arise from reliance on information contained in this site is provided. Links to other sites are provided for your convenience but no responsibility or liability for the content of those sites or of any external site which links to this site is accepted. References to any specific commercial product, process, service, or corporation are also for information only, and do not constitute endorsement, recommendation or favoring.

SAS is a registered trademark of SAS Institute Inc. SAS, Statistical Analysis System, 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.