HOME QUICK SEARCH AUTHORS KEYWORDS HELP BUGS

PNWSUG 2006 Papers - Index

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

# Title
×
Authors
×
Abstract
×
Keywords
×
Extras Pages
1 Advanced Warehousing with SAS9 Gary Mehler The world of data warehousing, data marts, and data integration continues to progress as more complex Business Intelligence environments become more widespread. This paper discusses the new and improved capabilities of SAS Data Integration Server (formerly known as SAS ETL Server) and SAS9 in general, to meet these challenges. These capabilities are discussed in the context of meeting specific business challenges and include the areas of administration of complex systems, metadata synchronization, ways to work with parallel execution of processes, and working with parallel storage. Monitoring during the operational phase of a warehouse is also suggested, and updated suggestions are given for multi-developer ETL environments. Armed with knowledge about these areas, warehouse developers can keep their productivity high as they address existing warehouse challenges and still have time to focus on new integration challenges as they arise sas grid, parallel processing, data integration, elapsed time, data standard, dataset, data wrangling, fact table, star schema, macro variable 17
2 Creating AND Importing Multi-Sheet Excel Workbooks the Easy Way with SAS Vincent DelGobbo Transferring data and analytical results between SAS and Microsoft EXCEL can be difficult, especially when SAS is not installed on a Windows platform. This paper discusses using new XML support in Base SAS 9.1 software to move data between SAS and Microsoft EXCEL (versions 2002 and later). You will learn step-by-step techniques to quickly and easily create multi-sheet EXCEL workbooks containing your SAS output. You'll also learn about converting your own multi-sheet EXCEL workbooks to SAS tables. The techniques described here can be used regardless of the platform on which SAS software is installed, including a mainframe! The use of SAS server technology is also discussed. output delivery system, excel 20
3 Five Easy (To Use) Macros Ted Clay Consider increasing your SAS vocabulary by five words: %DIR, %MAKEFMT, %TRANSPO, %ARRAY and %DO_OVER. Macro definitions are in the appendix. %DIR creates a SAS data set with the list of files in a directory. %MAKEFMT creates a format from a data set. %TRANSPO changes data from a series of observations to one observation per by-group with arrays of variables, preserving variable attributes. Finally, %DO_OVER, with the support of its companion %ARRAY, generates repeated program code. %DO_OVER loops over a list of values, substituting them wherever you put a "?" in your code phrase. For example, RENAME %DO_OVER(values=A B C, phrase= ?=?suf); generates the statement RENAME A=Asuf B=Bsuf C=Csuf; The code phrase can consist of many statements or an external macro, and multiple arrays can be defined and looped-over in parallel. No other macros have had a greater impact than these two, appearing in over 40% of the author's statistical programs. macro variable, proc step, proc transpose, missing value, numeric variable, macro definition, dataset, macro quoting function 32
4 Getting Started with the DATA Step Hash Object Jason Secosky,
Janice Bloom
A time consuming part of many SAS programs is looking up a value from one data set in another data set. SAS6 lookup methods, like SET with KEY= or a format, are good for many applications. However, in SAS9, there is a better tool, the DATA STEP hash object. The hash object provides a fast, easy way to perform lookups without sorting or indexing. This paper introduces the hash object, examines a few common hash object methods, compares SAS 6 techniques with the hash object, and builds rules of thumb for when to apply this new technology to your programs hash table, master data management, sysrc, sample, sas log, transaction data, set statement, hash iterator, input statement, length statement, merge statement, key=, lookup, memory usage, sas 9, options statement, proc step 10
5 Journeymen's Tools: Data Review Macro FreqAll: Using Proc SQL List Processing with Dictionery.Columns to Eliminate Macro Do Loops Ronald J. Fehd The SAS R⃝ macro language is simple, yet powerful. List Processing with PROC SQL is also simple, yet powerful. This paper provides a data review macro FreqAll which illustrates using PROC SQL reading Dictionary .Columns to replace macro %do loops. Expected audience is advanced users, and macro programmers. Keywords: data review, dynamic programming, list processing, do loop, macro, SQL proc step, proc sql, proc freq, macro variable, select, do loop, proc append, macro loop, data review, proc print, macro call, macro definition, %if-%then-%else 10
6 Layperson's Macro 101 Mark Terjeson There is a simple way to grasp the major concepts of the SAS Macro facility in order to easily learn how to create and troubleshoot macro code macro definition, macro facility 8
7 Making Sense of PROC TABULATE Jonas V. Bilenas The TABULATE procedure in SAS provides a flexible platform to generate tabular reports. Many beginning SAS programmers have a difficult time understanding the syntax of PROC TABULATE and tend to avoid using the procedure. This tutorial will explain the syntax of PROC TABULATE and, with examples, show how to grasp the power of PROC TABULATE. The data used in this paper represents simulated consumer credit card usage data and the code was developed using SAS 9. This updates the paper presented at NESUG in 2001 with the same title proc step, proc tabulate, proc format, class variable, sample, credit card, excel, proc freq 15
8 Missing Data? A Look at Two Imputation Methods Anita Rocha Statistical analysis is greatly hampered by missing data. It represents a loss of key information, bu t worse, it can introduce bias in the results of the analysis when the data is not missing at random. In the end can we make confident assertions? One way to help rectify the problem of missing data is to employ a sound method of imputation, a way to replace missing values with re asonable estimates. There are advantages and disad vantages to imputation. Here we look at two approaches. First , we consider the hot-deck method using SAS macros developed by Stiller and Dalzell, sometimes describ ed as the nearest-neighbor approach. Next, we expl ore the multiple imputation method using the SAS PROC MI. The examples herein were run on SAS 9.1 for Windows requiring Base SAS and SAS/STAT imputation, missing value, multiple imputation 2
9 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
10 Modifying The LogParse PassInfo Macro to Provide a Link between Product Usage in Rtrace Log and Time Used in Job Log Ronald J. Fehd Executing a SAS R⃝ program produces several outputs: the job log, which contains times of each step and the job the job listing, the desired output * the product usage (rtrace) log The job log can be read with the SAS Institute logparse citeSASlog- parse and passinfo macros. The rtrace log can be read with Raithel's rtracerd citeSASlogparse macro. This paper examines the issues of building a SAS usage database by modifying the above macros to provide common keys for joining the job times with the products used. Expected audience is advanced users, macro programmers, site and server administrators. Readers are expected to be familiar with issues of configuration and running programs as a batch process. Keywords: altlog log logparse passinfo rtrace rtraceloc macro put, proc step, proc print, macro variable, cpu time, proc options, %if-%then-%else 10
11 ODS HTML Meets Real World Requirements Lisa Eckler,
Robert W. Simmonds
This paper describes a customized information delivery system using ODS HTML. The challenge that spawned this was to automate delivery of a number of static SAS-generated reports via a corporate intranet. ODS HTML appeared to be the obvious solution, yet -- as is often the case with obvious solutions -- it failed to address many of our business requirements. These requirements included compliance with existing standards for the look and feel of reports, control over who had access to various levels of reports, and print and export functionality. We took advantage of PROC TEMPLATE, ODS HTML, PROC REPORT and the creation of an EXCEL spreadsheet containing an external Table of Contents to accommodate these requirements. In doing so, we developed a highly customized but fully automated report delivery application ods html, output delivery system, proc template, proc step, excel, proc print 11
12 PROC SQL vs. the Data Step - Trick or Treat? Tom Aldrich This paper will describe the transition from the small, simple data sets of college to the more complex world of government data sets with billions and billions of bytes (pronounce ala Carl Sagan). Simple tricks in the DATA STEP and some PROC's will be seen to translate into juicy treats in PROC SQL. PROC SQL topics will include the basics of SELECT, the use of DISTINCT, the WHERE clause, the ORDER BY clause, the GROUP BY clause, and JOIN's. PROC SQL topics will be introduced from the standpoint of non-PROC SQL tools including the DATA STEP, MERGE, PROC SORT, PROC PRINT, and PROC MEANS. Seeing how basic forms of PROC SQL statements map to other aspects of SAS will offer beginning SAS users a quick, alternate path to understanding SQL. Resources for learning SQL will be addressed, and some considerations of working with large data sets will be touched on proc step, proc sql, proc print, select, proc sort, proc means, where statement 11
13 Report Destination Macro Mark Terjeson The need was to be able to create EXCEL or CSV output easily from SAS or SAS web server and eliminate the labor time in customizing output for each SAS application built but yet have professional looking reports excel, proc step, proc template, %if-%then-%else, ods excel, xls, macro definition, macro loop, macro variable 17
14 The Beginners Guide to ODS Markup: Don't Panic! Eric A. Gebhart The MARKUP destination is the most powerful Output Delivery System (ODS) destination. The ODS MARKUP statement can create a multitude of output file types fr om Comma Separated Values (CSV) to Compact HyperText Markup Language (cHTML), HTML 4.0, Extensible HyperText Markup Language (XHTML), LaTeX, and an endless variety of Extensible Markup Language (XML) flavors. It can also create Microsoft EXCEL output. Learn how easy it is to use this destination, and learn how it works. Get the most out of this versatile ODS destination with minimum effort excel, ods html, output delivery system, sas output, proc template, proc step 20
15 The Power of PROC FORMAT Jonas V. Bilenas The FORMAT procedure in SAS is a very powerful and productive tool, yet many beginning programmers rarely make use of it. The FORMAT procedure provides a convenient way to do a table lookup in SAS. User generated FORMATS can be used to assign descriptive labels to data values, create new variables and find unexpected values. PROC FORMAT can also be used to generate data extracts and to merge data sets. This paper will provide an introductory look at PROC FORMAT for the beginning user and provide sample code that will illustrate the power of PROC FORMAT in a number of applications. Additional examples and applications of PROC FORMAT can be found in the SAS Press book titled "The Power of PROC FORMAT" (2005, Bilenas) proc format, proc step, lookup, dataset, proc freq, missing value, proc tabulate, char., put statement, format statement 9
16 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
17 There and Back Again: Navigating Between a SASHELP View and the Real World Anita Rocha A real strength of SAS compared to other statistic al tools is its ability to handle huge tables. The built-in efficiencies, however, limit its flexibility for si mple table manipulation using information at the me ta-data level. For example, how can one reduce the table size by invok ing, say, a selection criteria involving the variab le names rather than the values of a variable? In this paper we ex plore the use of the SASHELP views, particularly th e view called VCOLUMN. Then we use a macro to produce a simple d ynamic SAS program to limit a large table based on a variable name criterion. We will go from meta-data to the real world of tables, with a little automat ion thrown in. This example is easily extendible to manipulation of for mats, labels and other components of the meta-data. The examples herein were run on SAS 9.1 for Windows req uiring only Base SAS macro variable, response variable, keep statement, sample, proc sql, dictionary tables, sas programmer, proc step 6
18 Traversing the Bridges Between SAS and ESRI ArcMap (Note: This is a 2.8mb Powerpoint file.) Curtis E. Mack Presentation sample, dataset, sas base, connection string, character variable, proc freq, libname statement 47
19 Wait Wait, Don't Tell Me… You're Using the Wrong Proc! David L. Cassell Statisticians and data analysts frequently have data sets which are difficult to analyze, with characteristics that break the underlying assumptions of the simpler analytical tools. But SAS has tools to handle more complex problems. And, now that SAS has survey analysis procedures, there's no longer a need to pretend that survey samples should be analyzed using non-survey design tools. Now that large databases are commonly sampled for marketing, data mining, and scientific research, the need to use survey analysis procedures is increasing. In this paper, we'll look at several common situations and illustrate how the data are usually analyzed. Then we will show how the data ought to be analyzed using the SAS survey analysis procedures, and what the consequences of choosing the wrong procedures may be proc step, sample, proc calis, sample weight, proc surveyreg, regression analysis, confidence interval, proc glm, chi-square test, population, proc surveyfreq, proc surveylogistic, proc mixed, proc genmod, proc reg, logistic regression, proc surveymeans, degrees of freedom, logistic distribution, anova, estimate, random sampling, survey weight, proc means, cluster sampling, data science 11
20 What is Binary? What is Hex? Mark Terjeson If anyone is interested in what a megabyte is or how it got to be that way, what number bases are, what binary or hex means, or how to convert them, this will get you started! proc sql, excel 9
21 You Can't Stop Statistics: SAS/STAT Software Keeps Rolling Along Maura E. Stokes,
Robert N. Rodriguez
Release 9.2 of SAS/STAT software delivers a variety of new procedures and enhancements, which are motivated by methodological advances in statistics, technological improvements in the SAS System, and user requests for extensions to existing software. In order to respond to this spectrum of requirements, the development for each new release of SAS/STAT is balanced across a combination of experimental procedures, procedures which are achieving production status for the first time, and incorporation of new features in standard procedures. SAS 9.2 got a head start with the release of additional SAS/STAT procedures via Web download. These procedures, GLIMMIX, QUANTREG, and GLMSELECT, were made available as experimental procedures only for SAS 9.1 for Windows, and the GLIMMIX procedure was made production in a subsequent release. This paper describes the statistical development that will surface in SAS 9.2. First, the "post" SAS 9.1 download procedures will be reviewed, with examples from the GLIMMIX and GLMSELECT procedures. Attention turns next to a preview of SAS Stat Studio, the successor to SAS/INSIGHT software. ODS Graphics becomes production with SAS 9.2, and this paper reviews its many enhancements and describes the use of the new effect plot in PROC LOGISTIC. bayesian statistics, proc step, regression analysis, proc quantreg, proc glmselect, odds ratio, sample, proc genmod, proc glimmix, proc mixed, likelihood function, prior probability, feature selection, significance level, anova, maximum likelihood estimation, response variable, treatment period, piecewise exponential model, data cleaning, confidence interval, posterior probability, proc phreg, standard deviation, credible interval, estimate, histogram, poisson distribution, logistic distribution, density plot, treatment effect, box plot, proc glm 32

Back to Conf go 2007 go 2005

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.