HOME QUICK SEARCH AUTHORS KEYWORDS HELP BUGS

NESUG 1998 Papers - Index

126 papers. Source: NESUG (Northeast SAS Users Group) conference proceedings.

# Title
×
Authors
×
Abstract
×
Keywords
×
Extras Pages
1 "PROC TRANSPRINT" AND OTHER ODD USES OF PROC TRANSPOSE Ralph W. Leighton This paper discusses a few uses which may appear to go a bit beyond (or perhaps outside of) the basic intent of the procedure, these being: Record-to-record arithmetic; Variable Labels for Indexed Lists; and Rotated Reports with Varying formats The illustrations may seem to lack a common thr ead. Yet they actually point to a general application (a SAS macro) for producing a class of landscape re- ports, hence the whimsical title for the paper. Al- though space does not permit a full depiction of the code for this generic macro, the paper does end with an outline of its construction and shows how the macro pulls together the ideas presented. The pres- entation will provide the SAS code for those inter- ested proc step, proc transpose, proc print, calendar year, label statement, time variable, variable list 8
2 %FLATFILE, and Make Your Life Easier Michelle Buchecker %FLATFILE is a macro that will create a flat file from a SAS data set. This macro takes 3 parameters: the SAS data library name, the SAS data set name, and the name of the flat file to create. The beauty of %FLATFILE is that it will query the data set to determine the variable names and write out the PUT statement INCLUDING the variables' permanent format (or a default if there is none). Operating Systems: ALL Version: SAS 6.07 or higher macro variable, macro loop, do loop, flat file, proc sql, macro facility, put statement, dictionary tables, call symput, character variable, libname statement, proc step 3
3 %MAKFMT - A Dynamic Approach to Format Creation Roberto Lopez When performing data analysis, the SAS programmer is often called upon to somehow transform the data they are working with according to some criteria. That criteria may be static, in which case, a one-time, static solution will suffice. If the criteria are dynamic then a one-time solution may not suffice. In cases where the application of formats provides the solution we seek, a dynamic proc step, proc format, macro variable, dataset, user-defined format, proc contents, format statement, data transformation, macro definition, %if-%then-%else, sas programmer, macro facility, macro loop 9
4 %SYSFUNC (Bridge to External Data); Michael Yu %SYSFUNC, a macro function introduced in SAS Version 6.11 and 6.09E, enables Base SAS functions to be called inside macro environment, thereby greatly enhances the power of SAS macro language. This study attempts to explore %SYSFUNC usage in retrieving data set and external file information via Base functions such as OPEN, FETCH, GETVARN, etc. Finally, %SYSFUNC applications arising from SAS/GRAPH and SQL are presented macro function, proc sql, proc step, macro facility, macro variable, sample, macro definition 8
5 %SYSFUNC - The Brave New Macro World Christopher Yindra The new macro function %SYSFUNC (SAS rel 6.12) allows access by the macro processor to most DATA STEP functions and several SCL functions. Solutions to many common macro tasks can now be simpler and more efficient. In addition, many of the SCL functions allow the programmer to manipulate external files directly from the macro processor without forcing step boundary conditions with data steps. %SYSFUNC also allows the macro processor to do floating point arithmetic. Note: These features are also supported in the DATA STEP with the SYSFUNC function macro variable, macro function, dataset, sysrc, data step, macro facility, %if-%then-%else, macro definition 8
6 &&&, ;;, and Other Hieroglyphics - Advanced Macro Topics Christopher Yindra macro variable, proc step, call symput, proc print, run, do loop, macro loop, dataset, symbol table, where statement, global symbol table, proc contents, macro definition, macro put, predictor variable, sample, macro facility, macro conditional 9
7 31 Flavors of EPA Data - Analysis of Unfamiliar Databases for Secondary Use Chapman P. Gleason Like all federal agencies, the US Environmental Protection Agency (EPA) collects extensive data and publishes it on the World Wide Web. High-level EPA officials asked the Center for Environmental Information and Statistics (CEIS) an important question: "How good is EPA data?" This paper discusses how CEIS answered this question using SAS software proc sql, response variable 7
8 A Color Scheme for SCL Programs Rick Aster 2
9 A Methodology for Developing SAS Applications for Use in Multiple Languages Gina M. Thomas Developing SAS applications that will be used in several countries, each with its own native language, presents unique challenges for the SAS applications developer. This paper will present a methodology for developing a SAS application that may be used in any number of languages, without requiring a rewrite of the application code for each language translation. The application is developed once, the translation methodology is applied once, and then the application can be translated as often and to as many languages as is necessary, without having to rewrite any of the original application code macro variable, dataset 4
10 A Simple SAS/AF Program to Manage SAS/CONNECT Sessions David D. Chapman The Census Bureau is a large organization with a varied and changing computing environment consisting of DEC clusters with Alpha and VAX computers, all types of UNIX workstations, WINDOWS/NT servers, and desktop PCs connected together with TCP/IP. For an individual connecting to a single remote computer, it is easy to use SAS/CONNECT . However, for individuals using many different computers and operating systems that sometimes require different script files with the same computer, it can be complicated and tedious. This simple SAS/AF program installed on the toolbar is a point-and-click way to sign onto and sign off of different computers. A user only needs to know the name of the computer. This program is organized around a SAS catalog that stores program code and all user defined information and files needed to use SAS/CONNECT macro variable, catalog, proc step 6
11 A Simulation Study of Estimators In Stratified Proportional Hazard Models Hsi-Wen Liao It is common for large population-based surveys to select a sample from a population using a complex design. A simulation study was conducted to compare the estimates from the stratified proportional hazards model with the weighted estimates of the Binder method, when a stratified random sample of the population is used. The SAS PHREG procedure performs regression analysis of survival data based on the proportional hazards model while the SUDAAN SURVIVAL procedure estimates the parameters using the Binder method. Both procedures were used in this study to give estimates of regression parameters based on the two different methods of interest. This study shows that the estimates form the stratified proportional hazard model perform well under the assumptions for stratified proportional hazard models. The estimates from the Binder method show a tendency to underestimate the true value and gave the estimates from the unstratified finite population proc phreg, sample, likelihood function, hazard function, exponential distribution, regression analysis, sample size, hazard ratio, standard deviation, estimate, numeric functions, survival function 8
12 A Smart Guide to Dummy Variables: Four Applications and a Macro Susan B. Garavaglia Dummy variables are variables that take the values of only 0 or 1. They may be explanatory or outcome variables; however, the focus of this article is explanatory or independent variable construction and usage. Typically, dummy variables are used in the following applications: time series analysis with seasonality or regime switching; analysis of qualitative data, such as survey responses; categorical representation, and representation of value levels. Target domains may be economic forecasting, bio-medical research, credit scoring, response modeling, and other fields. Dummy variables may serve as inputs in traditional regression methods or new modeling paradigms, such as genetic algorithms, neural networks, or Boolean network models. Coding techniques include "1-of-N" and "thermometer" encoding. Statistical properties of dummy variables in each of the traditional usage and application contexts are discussed, and a more detailed introduction of a Boolean network model is presented binary variable, regression analysis, neural network, odds ratio, standard deviation, logistic distribution, logistic regression, proc step, nominal variable, predictor variable, proc reg, network optimization, likelihood function, macro definition 10
13 A Tutorial on the SAS Macro Language John J. Cohen The SAS Macro language is another language that rests on top of regular SAS code. If used properly, it can make programming easier and more fun. However, not every program is improved by using macros. Furthermore, it is another language syntax to learn, and can create problems in debugging programs that are even more entertaining than those offered by regular SAS. We will discuss using macros as code generators , saving repetitive and tedious effort, for passing parameters through a program to avoid hard coding values, and to pass code fragments, thereby making certain tasks easier than using regular SAS alone. Macros facilitate conditional execution and can be used to create program modules that can be standardized and re-used throughout your organization. Finally, macros can help us create interactive systems in the absence of SAS/AF. When we are done, you will know the difference between a macro, a macro variable, a macro statement, and a macro function macro variable, macro definition, macro facility, macro loop, %if-%then-%else, macro function, do loop, proc step, sample 6
14 Acceptance Testing of a Large Distributed Information System Using Statistical Resampling Donald T. Gantz This paper describes how we used statistical resampling to build a baseline model for hardware performance in a very large distributed information system. An experimental design for acceptance testing of new hardware was based on this model. The project involves a national service organization with 7,500 field offices. A new generation of hardware was developed to replace units that each office uses in the course of everyday business. An acceptance plan was needed to evaluate the performance of the new units and determine whether the new units significantly outperform the units they replace. This paper presents the acceptance plan that was successfully used to test the new units. SAS software was used to implement a stratified random sampling design for selecting experimental test groups, to do model building via resampling and to analyze and report the test results. The resampling effort utilizes macro language and the analysis and reporting are graphics intense sample, proc freq, proc step, event, proc sort, bar chart, poisson distribution, random sampling, proc print, stratified sampling, dataset, macro variable 10
15 Advanced Techniques to Build and Manage User-Defined SAS Format Catalogs Jack N. Shoemaker user-defined format, proc step, proc format, char., dataset, raw data, data step, proc means, date variable 6
16 Alacart: Poor Man's Classification Trees Leonardo Auslender 10
17 All Zipped Up and Nowhere to Go Louise S. Hadden,
Jim McIntosh
Computer programmers and analysts are frequently presented with disk space constraints, as our sources of data have become removable media. Cartridges, tapes and CD-ROMS can contain far more data than there is space available on the computer platform being utilized. This paper illustrates one method for dealing with the space quandary many programmers face on a daily basis. Most of the examples presented are specific to base SAS running on a UNIX operating system; however, with some modification, some of these techniques can be used with SAS for personal computers and mainframes. In the process of completing the task on which the examples presented are based, UNIX SAS versions 6.11 and 6.12 were used proc step, input statement 6
18 An Introduction to Mapping Using SAS/GRAPH Michael S. Zdeb proc step, proc gmap, if-then-else, data step 8
19 An Introduction to the SQL Procedure Christopher Yindra This tutorial will introduce the SQL (Structured Query Language) procedure through a series of simple examples. We will initially discuss choosing variables (SELECT) from SAS data sets (FROM) where a specific criteria is met (WHERE). We will then discuss calculating and formatting values. Once the basic SQL syntax has been covered we will discuss more advanced features of SQL such as grouping and ordering data, selecting based on proc sql, proc step, where statement, group by, order by, select, dataset, sas base 10
20 And All With The Push of a Button! Ray Pass macro variable, excel, macro definition, proc step, macro call, dataset, proc printto, txt 8
21 Building a Data Entry & Correction System by Synchronizing the Data Table and Data Form Hung X. Phan The Data Set Entry classes display the contents of SAS data sets as follows: Data Form displays one row of a SAS data set at a time using SAS/AF widgets to represent the columns. Data Table provides a tabular display of multiple rows of a SAS data set. This paper will illustrate a technique of combining the best of both, Data Table and Data Form, to build a Data Entry and Correction System. This system will have a Data Table widget displayed on the top half of a frame and a Data Form widget on the bottom half. When a row within the Data Table is clicked, the same record is displayed on the Data Form where data may be entered and/or modified. Buttons on a toolbar allow the users to perform various functions dataset, where statement 9
22 Calculating Marginal Probabilities in PROC PROBIT Guy Pascale estimate, logistic distribution, normal distribution, proc step, sample, regression analysis 5
23 CATALOGER: An Application Development Tool to Search, Compare, and Document SAS Catalogs and Data Files Christopher A. Roper,
Gina M. Thomas
This paper will present an application written entirely in SAS that greatly enhances the developer's ability to develop, compare, and manage SAS catalog entries and datasets. This application has point and click capabilities for printing catalog entries, including images of frame entries and complete descriptions of associated widgets directly into Microsoft Word documents, creating publication quality documentation at the push of a button. The batch printing facility allows for printing of all catalog entries of virtually any type, including Program, Source, SCL, and Slist (including expanded sublists) entries. The text searching facility will search through all text-based entries for character strings and allow point and click access to the locations in any catalog entry containing the text string catalog entry, catalog, dataset 6
24 Changing the Shape of Your Data: PROC TRANSPOSE vs. Arrays Bob Virgile proc transpose, proc step, do loop, missing value 6
25 Code or DATA? H. Ian Whitlock A Report Writing Seminar given at Westat was charged with finding new techniques to control complex DATA _NULL_ reports. This paper presents one of the techniques developed. DATA _NULL_ reports often require numerous tedious conditional PUT statements writing a mixture of literal information with data. In such cases one can view the report as a text input file with variable references, where one wants to conditionally print certain lines after making substitutions for variable put statement, character variable 10
26 Coders' Corner Reporting Forum Erik S. Larsen,
Charles A. DePascale,
Lori Goldman
proc step, proc tabulate, macro variable, proc report, proc format 8
27 Coding for Posterity Rick Aster proc step, dataset, run, proc sort, macro variable, variable list, options statement 6
28 Considerations for Creating and Maintaining A SAS-Oriented Home Page Robert Schechter According to the SAS Institute's web page (updated April 16, 1998) there are 27 SAS RUGs and LUGs with web pages. This paper will explain the design and coding considerations used in the development of the PhilaSUG site. There are several fundamental considerations in designing a home page that transcend HTML (HyperText Markup Language, the code that describes the structure of a web document's content). These concerns include layout, design, and ease of use. The impacts of various browsers and HTML levels will be discussed. Finally, the basic HTML (level 2 - Frames, Style Sheets, and Dynamic HTML will not be covered) used to author the PhilaSUG site will be demonstrated using a popular browser txt, likelihood function 6
29 Creating a Self-Documenting FORMAT Catalog Jack N. Shoemaker user-defined format, proc step, proc format, proc catalog, modify statement 2
30 Creating an ADP Center of Excellence: A Miltonian Approach of Looking Through Two Decades of "Visible Darkness" Peter Parker After almost two decades of working with large and then small computers, primarily with SAS software, I step back from my monitor and ponder- what makes my ADP shop a Center for Excellence. In this paper, I'll inquire on what most becomes a computer guru, an unusual type of professional. As well, I offer my truths on how to handle users, management, and the constantly reinvented technology. I will use notes that I have amassed throughout my career, now at its midpoint. Rather than taking a dry totally technical approach, I prefer a more literary stylistic one, drawing on John Milton's Paradise Lost and other classic literature as descriptive aids to my arguments. My observations may help you keep users satisfied, and mostly plan a prosperous career in information processing and office automation. I have been programming since 1979, mostly in SAS software. I'm proficient in most hardware and software. I run an ADP shop in the U.S. Department of Commerce artificial intelligence, create table 6
31 Creative Uses of Functions Steven A. Wright sample, proc step, put statement, mod, subsetting if, time variable, where statement 5
32 Cross-Platform Migration of Legacy Data: Using SAS as a Driver for Every Step Charles J. George Until international standards for database archives are established, data preservation must be an active endeavor at every change in preferred operating platform and DBMS. This paper demonstrates how SAS can be used to move data "single-handedly" from System 1032 on VAX/VMS to SQL Server on Windows NT. A SAS MACRO (DUMP1032) parses the 1032 attribute list for a given table, creates a data dictionary, requests an ASCII dump of the table, and creates a DATA STEP with SAS input descriptions that include labels as well formats. If called remotely via SAS/CONNECT, the attribute list, data dictionary, ASCII dump, and input descriptions can be transferred. This preserves nearly every feature of the original data structure, providing a "legacy" upon which to build current and future database controls. DUMP1032 is limited in as much as it is designed for one system configuration dataset, data dictionary, macro variable, macro definition, %if-%then-%else 7
33 Data Into Graphics Doth Go: Adding Data to Graphics Forms Using the Data Step Graphics Interface (DSGI) Harvey Monder macro variable, macro definition 3
34 Data Mining: An Overview of Methods and Techniques for Increasing Profits in Direct Marketing C. Olivia Parr Rud Data Mining is a new term for the common practice of searching through data to find patterns, which will predict future outcomes or define measurable relationships. Statistical and machine learning methods are the favored tools of many businesses that utilize direct marketing. This paper will explore some of the typical uses of Data Mining in direct marketing with discussions and examples of measuring response, risk and lifetime customer value. The paper will conclude with highlights of SAS Enterprise Miner and its ability to transform the Data Mining process sample, logistic distribution, logistic regression, missing value, univariate analysis, regression analysis, data cleaning, interval variable, response variable, predictor variable, product profitability, proc logistic, standard deviation, proc step, data mining, gain chart 8
35 Data Tables: Highlighting Techniques Christopher A. Roper Data tables are arguably one of the best looking widgets in SAS. This makes them a popular choice for replacing the venerable Extended Table widget as a selection list, or front end to a data set. The model/viewer paradigm is an extremely flexible tool that gives the Data Table, and its parent class the Table Editor, an extensive utility across a broad range of applications. Combined with the abundance of methods available to the Data Table class, this widget can add a very nice touch of polish to an application, giving it the professional, finished appearance a client demands and deserves. This paper illustrates five scenarios for using highlighting to make the Data Table object more attractive and functional for your information consumers dataset, filtering 8
36 Data Visualization Using Java and VRML Lingxiao Li,
Art Barnes
Java and VRML (Virtual Reality Modeling Language) are tools with tremendous potential for creating two- and three-dimensional visual representations of data and sharing those representations over a network. Visualization software written in Java can run on any platform where the JVM (Java Virtual Machine) is supported, either as a stand-alone application or as an applet embedded in a Web page. By using VRML as the output format for data visualization, the results can be easily shared over the web and have access to the rich graphical capabilities that VRML provides. This presentation will outline ways you can use the new Java charting components in your custom data visualization applications. It will also describe a new batch procedure that uses VRML technology for web-enabled data visualization 6
37 Dealing With Health Care Data Using the SAS Alan C. Wilson,
Marge Scerbo
bar chart, insurance claims 6
38 Debugging 101 Peter Knapp missing value, proc step, proc print, input statement, character variable, run, error message, date variable, by group processing 10
39 Delivering Geographic Information: Just Click My Map Object Jeanne M. Spicer sample, dataset 4
40 Developing a Parameter Evaluation Methodology Using SAS Richard W. Graham In another paper I am presenting here at the conference, Developing Ratio Edit Parameters with SAS for the Economic Census, I detail a sophisticated methodology for developing ratio edit parameters. As presented in that paper, developing parameters for the Economic Census is an arduous computer and labor intensive effort. Many months are devoted to developing and reviewing the edit parameters for nearly 2,900 industry classifications. Even with a full complement of 30 subject-matter survey statisticians to review the parameters, it would be impossible to review the all of the parameters generated by the resistant fences methodology in a timely manner. This paper describes both an interactive and batch-oriented graphical evaluation procedure for evaluating all of the industry and ratio combination parameters. Both of these applications were developed in an effort to significantly reduce the time to review the edit boundaries and the imputation factors imputation, proc step, regression analysis, proc gplot 5
41 Developing Ratio Edit Parameters with SAS for the Economic Census Richard W. Graham Developing ratio edit parameters for the editing of census data has always been an arduous task at the Census Bureau. Prior to each quinquennial census undertaking, subject-matter specialists and programming staffs worked countless hours developing specifications, computer programs and generating and reviewing edit parameter output. For the 1997 Economic Census a team of specialists endeavored to throw out the old technology of developing edit parameters and developed a SAS/AF7, SAS Screen Control Language (SCL), and SAS/MACRO program for the creation of ratio edit parameters imputation, outlier 10
42 Discussion Of Two Ways Of Transforming Multiple-Record Data Into Single-Record Format When There Is a Large Number Of Variables David Izrael In one large survey project each record in the raw data set contains information from one survey form. At some point, Adenormalization@ of the data needs to be done transposing a multiple-record-per-object data set to a one-record-per- object data set that retains all raw variables from all data sources. The large dimension of the original data set requires an approach that can: a) carry out the denormalization in a reasonable amount of time; b) handle the indexing and standardization of variables= names automatically; c) easily adapt as the set of variables changes over time. One approach uses a two-step PROC TRANSPOSE. This approach deals elegantly with issues b) and c) , but it takes a substantial amount of time to run. The second approach uses a driving macro based on the RETAIN statement. Although this method requires some maintenance, it runs much more quickly than the TRANSPOSE method proc transpose, proc step, macro loop, macro definition, %if-%then-%else 6
43 Don't Panic When Your Favorite SAS PROC is Not Forwarded to the Next Version Release Scott LaPorte proc step, proc glm, proc transpose, proc genmod 3
44 Driving to Better Credit Policies: The Risk Strategy Instrument Panel Adam Terr The Risk Strategy Instrument Panel is a custom SAS/AF FRAME Entry application created for the Risk Management Group, Retailer Financial Services, GE Capital Services. The Instrument Panel launches an existing library of MVS (OS/390) batch SAS programs from desktop personal computers. It was designed to let risk analysts and others create and evaluate credit line and authorization strategies more easily. To make the application easier to use, some innovative design strategies were employed, such as the use of non-visual object classes to provide common functions such as supplying lists of available tape data sets to the GUI. Another interesting feature is the use of Data Tables as list selection widgets. The combination of careful planning of the application menus with an attractive GUI design have resulted in an application that some analysts find fun to use dataset, sample, macro definition 8
45 Dynamic Variable Lists Warren E. Stinson proc step, proc contents 2
46 Effective Use and Management of Metadata Catherine A. Phipps Metadata: you know you have it (somewhere), you know you should be using it better, but how? The SAS/WAREHOUSE Administrator software in Version 6 and the Common Metadata Repository for the SAS system can help answer that question. The V6 SAS/WAREHOUSE Administrator software provides the tools you need to define your data warehouse and to build a single store of metadata about your operational and data warehouse environment. Its read and write API opens up your metadata to other applications for exploitation. The metadata story expands quite a bit in Version 7 with the transaction data, proc contents 4
47 Efficient Access to Data Warehouse With PROC SQL Pass Through Facility James Yang PROC SQL Pass-Through facility has superior performance over SAS/ACCESS view descriptors on Highmark Information Warehouse (MVS DB2), especially when joining the tables. If a relatively small SAS data set needs to join with the Data Warehouse tables, the key values can be put into macro variables and then passed to either the DB2 query with Pass-Through facility, or the where clause on SAS/ACCESS view descriptors. Although the CPU time goes down dramatically in both cases provided the key is indexed on DB2, the Pass-Through facility is still much efficient than SAS/ACCESS view descriptors. Based on this information, macro %JOINDB2 has been developed to bypass the restrictions on statement length (about 32KB) and day-time CPU time, which are governed by DB2. These programs can be adapted for other DBMS and platforms. The greatest impact on performance is caused by the transfer of data between the DBMS and the SAS System proc sql, proc step, dataset, macro variable, where statement, cpu time, proc sort, create table, sql pass-through, unique key, keep statement, data merging, %macro parameters, %if-%then-%else 7
48 Exploiting Key Answers from Your Data Warehouse with the SAS System Enterprise Reporter Donna Torrence You may have the most organized data warehouse and data structures in the land. You may even have easy access to your corporate-wide data files and tables, but what good is it if business users are unable to get meaningful answers from this data? The SAS System offers a new reporting vehicle to exploit data warehouse or enterprise-wide data all from a Windows reporting environment. The SAS Enterprise Reporter software, with a similar look and feel of Microsoft Office products, allows business users to concentrate on the design of reports, rather than spending effort on creating the reports via a programming language. For the information facilitators, Enterprise Reporter software offers an environment for data preparation and administration data warehouse, dataset 7
49 Exporting Graphics to Other Applications: Which Method Should I Use? Peter Ruzsa excel, catalog entry 19
50 Exporting SAS Graphs to Other Applications Steven E. Elkin Did you ever wonder how to get your SAS Graph into Microsoft Word? How about that fantastic Graph you programmed for your boss' Power Point presentation. What if you could look at your Graph on the Web or a network drive through Netscape Navigator? How many times did colleagues ask you to e-mail your graph? The need to access SAS Graphs in other software is important and can greatly improve the ability to efficiently meet your customers needs. This paper presents the appropriate device drivers n ecessary to convert SAS Graphs stored in SAS C atalogues to files which can be used in word processing, presentation, and Internet browser software. A single macro containing all the needed parameters for input and output is discussed for exporting all file types. The GREPLAY i procedure is used to create a list and ultimately output graphical entries from a chosen catalogue proc greplay, macro variable 5
51 Extracting SAS Data Sets from a Multi-Dimensional Database in Batch Michael Bretz In Release 6.12, Multidimensional database (MDDB) files are a new type of SAS file that stores summarized data for fast and easy access. SAS/EIS software offers several objects that can interactively extract data from the MDDB into SAS data sets. How do you perform this operation in batch for delivery of summarized data to other processing systems? A SAS/AF class exists that can be used to extract selections from a MDDB file. This paper demonstrates how to extract data from a MDDB file using a SAS/AF SCL entry that can run in a batch process to deliver your aggregate data to the rest of the SAS system dataset, proc step, sample 5
52 Fasclus Procedure To Identify Subtypes Within A Study Population Following Treatment With A New Antidepressant Drug Lev Sverdlov percent change from baseline, change from baseline, cluster analysis, proc fastclus, correlation, sample 5
53 Fat Clients - Thin Clients: Stop the Madness Robert Szczerba dataset, data mining 4
54 Fundamentals of FRAME: A Tutorial for Building Applications Gregory S. Barnes Nelson SAS/AF1 FRAME technology allows us to develop user interfaces that are friendly to use. They are the basis for many SAS applications in which end-users determine what happens with the click-of-a-button. This paper presents a framework for building intuitive user-based applications. Here we will develop a simple application, which builds on itself iteratively. By exploring some of the most common FRAME objects and understanding how events are handled in SAS/AF, we will build a simple interface for an applications. Through this step-by-step process, we will show you how to build an interface that collects user input, which can be used to front-end traditional SAS macros. Despite it's simplicity, this paper should give the reader a methodology for developing user-based applications that can serve to front-end most run- time, interactive macros. This paper is intended for both new users of SAS Software as well as experienced SAS programmers with little or no experience in SAS/AF dataset, macro definition 10
55 Geostatistics Using the SAS System A. Katherine Ricci sample, proc step, proc krige2d, time series analysis, covariance 5
56 Handling Missing Values in the SQL Procedure Danbo Yi PROC SQL as a powerful database management tool provides many features available in the DATA steps and the MEANS, TRANSPOSE, PRINT and SORT procedures. If properly used, PROC SQL often results in concise solutions to data manipulations and queries. PROC SQL follows most of the guidelines set by the American National Standards Institute (ANSI) in its implementation of SQL. However, it is not fully compliant with the current ANSI Standard for SQL, especially for the missing values. PROC SQL uses SAS System convention to express and handle the missing values, which is significantly different from many ANSI- compatible SQL databases such as Oracle, Sybase. In this paper, we summarize the ways the PROC SQL handles the missing values in a variety of situations. Topics include missing values in the logic, arithmetic and string expression, missing values in the SQL predicates such as LIKE, ANY, ALL, JOINs, missing values in the aggregate functions, and missing value conversion proc sql, missing value, proc step, character variable, inner join, macro put 8
57 Harnessing the Power of SCL Lists Lisa Ann Horwitz SCL lists are ordered collections of data stored in memory, and are a powerful tool for applications developers. The sources of this data can include hard coded values, SAS data sets, information retrieved from interaction with the application user or the current SAS session, or the FRAME entry's objects themselves. This paper explores how to create and populate SCL lists, how to retrieve and utilize information from lists, how to manipulate lists, and how to access some of the lists associated with FRAME entry objects. An assortment of ideas for using SCL lists will be suggested, as well catalog entry, dataset, sample 9
58 How to Choose a SAS Training Vendor Bryan K. Beverly Question - If you had funds available for initial or continuing SAS training, would you also have knowledge of your training options? Should you assume that the SAS Institute is the only training vendor? Which would benefit you more cost-wise - a local or remote training site? Do all vendors offer mainframe and PC-based training? How much would it cost for each student per day? Would your base training costs automatically include the instructor's room and board expenses? The purpose of this paper is to provide some insight into the process of selecting a vendor for SAS training. Using the lessons learned from a comparative analysis of SAS training vendors, the reader will learn of the ten most important issues to consider when exploring SAS skill introduction and enhancement solutions 2
59 How to Sort Production Reports Prior to Printing Helen-Jean Talbott Each month the Credit Policy Department of Commercial Credit produces about 25 different reports to send to the 202 district, 48 region, and 8 division managers. These reports are produced using base SAS software in programs run in a production environment under MVS. Each district manager receives portions of the reports specific for that district. Similarly, region and division managers receive portions specific for the districts within regions and for regions within division. Due to the size of these reports and number of recipients, it would take two days for a person to sort and label them for distribution. There was a need for an automatic method to print reports in order by district so that they would not have to be sorted manually. The purpose of this poster is to show how to create SAS data sets and report modules and to use them in conjunction with the SAS macro language to produce reports sorted in district order prior to printing proc print, proc step, macro facility, macro variable, macro definition 5
60 IN & OUT of CNTL with PROC FORMAT Nancy K. Patton (CNTLIN=) If you are given account numbers in a data set and you are asked to identify all these accounts in numerous flat files, how might you approach this? Using the SAS system and the CNTLIN= option in PROC FORMAT, a format can be defined where all the account numbers you want identified are set to a value of 'KEEP". By using the PUT function to apply that format to the account numbers as you read the flat files, you could identify the records with the accounts you are looking for and control their destiny!. This example will make the look-up process simple to understand and easy to bring back to work! proc format, proc step, proc means, class variable 2
61 Indexed Table Lookup vs Multiple Data Sets Douglas L. McAllaster This paper shows how to use a single SAS /GA3 DATA STEP to perform an indexed table look-up against multiple data sets. The technique uses the KEY= data set option to directly read indexed data sets. The code shows how to use the automatic SAS variable _IORC_ to check whether the direct read found a matching observation. The code also shows how to avoid an important potential pitfall when the direct read does not find a matching observation missing value, sample 4
62 Indexing and Compressing Data Sets: How, Why and Why Not Andrew H. Karp dataset, character variable, where statement, numeric variable, proc step, length statement 5
63 Information Theory Makes Logistic Regression Special Ernest S. Shtatland This paper is a continuation of our previous presentations at NESUG , 1997 and SUGI, 1998 ([1,2]). Our first aim is to provide a theoretical justification for using logistic regression (vs. probit, gompit, or angular regression models, for example). The consensus is that logistic regression is a very powerful, convenient and flexible statistical tool; however, it is completely empirical. Information theory can guide our interpretation of logistic regression as a whole, and its'coefficients; through this interpretation we will demonstrate how logistic regression is special, and unlike other regression models mentioned above. A similar approach will be used to interpret Bayes' formula in terms of nformation. Our second goal is to propose a test of significance that in case of small samples is superior to the conventional Chi- Square test logistic distribution, regression analysis, logistic regression, odds ratio, sample, predictor variable, likelihood function 4
64 Interfacing SAS, MS Excel, and the Intranet without SAS IntrNet or PC SAS Peter Prause excel, dataset, batch job 8
65 Internet Based Data Collection for Analysis with SAS Robert S. Workman This paper describes a data collection and analysis project designed to monitor blood product usage by hemophilia patients. Data collection was accomplished using Internet based forms created with Microsoft FrontPage 98 and located on a PC running the Microsoft Personal Web Server. SAS procedures used included INFILE with the DSD option, which allows comma-delimited files with consecutive missing values to be read correctly and system calls to redirect output to the end user's e-mail account. The Application This application began as a corollary to a home health care study currently being implemented at the Yale University Hemophilia Treatment Center. The aim of the Yale project is to use P.C. based video teleconferencing to assess bleeding episodes in the patient's home thereby reducing unnecessary emergency room visits sample, missing value 3
66 Introduction to the SAS Macro Language Doris Steppe The SAS Macro Language allows you to extend and customize the SAS System and to reduce the amount of text you enter. The purpose of this poster is to present an overview of SAS Macros and how they can be used to streamline SAS programs macro variable, macro facility, symbol table, macro definition, proc step, proc sql, stored macro 3
67 Is Your Data Warehouse Successful? : Developing a Data Warehouse Process That Responds to the Needs of the Enterprise Peter R. Welbrock Developing a Data Warehouse can be very costly to any enterprise in terms of both resources and money. There is a certain amount of fixed cost in every data warehousing project, with an additional set of variable costs depending upon the scope of project. The spending of the fixed cost requires a leap of faith based on the assumption that the potential benefits of developing the Data Warehouse will be accrued. The variable costs can be more closely monitored, with additional resources only being incrementally used based upon the return (benefits). This paper will discuss the importance of developing a data warehousing process that inherently allows for the measurement of success. Each Data Warehouse will require a different process, based upon the particular needs and culture of the enterprise. The measurement of success will also differ from Data Warehouse implementation to implementation data warehouse, stage 1 10
68 It's Only Temporary Janet E. Stuelpner Very often during an interactive SAS session, it is necessary to create temporary external files. From release 6.11 of the SAS System we have the ab ility to create a flat file within the same directory that contains SAS data sets. There are benefits to using this new technique. This paper will show you how to define this file in the WORK directory and the benefits of its use libname statement, filename statement 2
69 JMP Reveals the Truth: Statistics Can Be Fun! William R. Gjertsen JMP is an interactive statistical analysis program that promotes the visualization and discovery of important patterns and outliers in your data. It accomplishes this through unique graphics and the dynamic linking of points. JMP's charter is to harness both statistics and graphics together at one time so that data analysis becomes understandable, enjoyable, and even fun! The use of leverage plots, comparison circles, desirability and interaction profilers, parallel axis graphs, Gabriel bi-plots, the interactive linking of graphs, and the use of exploratory analysis and slider tools will be shown with various examples from science, engineering and finance outlier, sample, data science 12
70 Knowledge Discovery: The Seven New Multivariate Identification Model Tools Nicholas Skovran A new set of quality management tools is on the horizon, which may assist managers and business technologists to make sound decisions with relevant data. This new set of tools is the third generation of quality management tools now available for use as a resource in today's dynamic business environment. The first tools introduced were the 7 Basic Quality Control Tools developed by (Ishikawa 1968). These tools were designed to help the problem solver gather and analyze data. This transformation of data into information was utilized as a springboard for quality improvement techniques. The second generation of tools developed were the 7 New Quality Tools for Managers & Staff (Mizuno 1979). These tools were created to assist managers and team members in their planning, management and team activities. Many of these previous tools were not new. In fact, most had their inception in World War II Operations Research cluster analysis, discriminant analysis, regression analysis, quality control, factor analysis, outlier, proc princomp 5
71 Macro for computing LOCF: Comparison of results with PROC MIXED Patricia R. Houck It is common in clinical research to experience missing observations in a longitudinal trial. To analyze the data as an intent to treat sample, it is necessary to impute data for the missing observations or use techniques that will handle missing data. One common imputation procedure is Last Observation Carried Forward (LOCF) where the last observed value for each case is carried out and replaces the missing observations. An alternative approach is to apply a maximum likelihood estimation procedure that can be accomplished with a mixed model that does not require any imputation. It is thought that the LOCF imputation, missing value, proc mixed, proc step, last observation carried forward 2
72 Managing SAS/GRAPH Displays with the GREPLAY Procedure Perry Watts PROC GREPLAY is used for redisplaying graphs that have been stored in temporary or permanent catalogs. This tutorial will show how catalogs are created, popu- lated, and managed so that graphs can be redisplayed in the current session or later on. While the replay command is demonstrated in an animated graphics example for a timed display of individual plots, the tutorial is primarily devoted to discussing issues related to treplay used for displaying multiple graphs on a page. A macro is also described that ends the drudgery of manually entering panel coordinates into a template. Templates can either be recalled from a catalog or now they can be simply re- created by exercising the macro proc step, proc greplay, catalog entry 7
73 Millenia: Checking SAS Applications for Century Date Compliance Bruce F. Gilsen dataset, sample, proc freq, sas library 8
74 Monitoring Data Discrepancies During Clinical Trials Cornelius Chase audit dataset, clinical trial, audit trail, dataset, adverse events 4
75 More about "INTO:Host Variable" in PROC SQL: Examples John Q. Zhang The examples presented in this paper show that the INTO: clause of PROC SQL (both before and after enhancement) can considerably facilitate SAS data manipulation in both DATA and PROC steps proc step, proc sql, proc contents, macro variable 2
76 Multivariate Discrimination of Categorical Data Using the SAS System Jeffrey S. Butler proc step, proc freq, likelihood function, logistic distribution, sample, discriminant analysis, correlation, in=, prior probability, regression analysis, logistic regression, proc discrim, binary variable 8
77 Obtaining User Criteria Without Editing the Code Michael A. Mace %WINDOW provides an elegant means to gather user criteria for customized or ad hoc reports. Some of the benefits are: only Base SAS is needed (no SAS/AF ), there is only one program to write and maintain, and the end-user never has to edit any code. Several examples will demonstrate gathering single and multiple choices per parameter and conditionally gathering criteria. In addition, the use of %WINDOW will be compared to using %PUT and %INPUT macro variable, macro put, macro conditional, sas base, macro flow control, macro loop, macro facility, macro definition, proc freq 6
78 ODS for Data Analysis: Output As-You-Like-It in Version 7 Christopher R. Ollinger This paper discusses advances made in the output generated by all Version 7 SAS Software procedures. New features provided by the Output Delivery System (ODS) include automatic rendering of procedure output in HTML for the web, rich-text, Postscript or PCL format, output data sets from any printed output, and the ability to edit the look and feel of most output. ODS also supports all legacy line-mode printing and supports a document feature to allow post-procedure replaying of output. This talk introduces ODS features to be delivered in Version 7 and provides some concrete examples of how data analysts and statisticians can take advantage of the feature set provided by ODS. /G30/G52/G57/G4C/G59/G44/G57/G4C/G52/G51 Every SAS user knows and loves the listing file, the vehicle for all printed SAS output for more than two decades. While familiar, the listing file has its limitations. For starters, output is restricted to monospace fonts only 20
79 Old Friends, New Features: What's new in SUMMARY and TABULATE Robert S. Ray For Version 7 of SAS software, the SUMMARY and TABULATE procedures have many new options, two of which enhance control over which class levels appear in the output and the order in which they appear. The preloadfmt CLASS statement option generates initial class level data from user-defined SAS formats. The classdata= PROC statement option gives further control by allowing the user to supply a second data set which defines all acceptable class levels. Both of these features can be used to filter or extend the analysis data and both redefine the meaning of order=data proc step, class variable, proc means, proc tabulate 2
80 Option Pricing: A Time Series Alternative to Black-Scholes David R. Roberts time series analysis, predictor variable 7
81 Profiling Patient and Physician Populations with Clinically-based Data Models Enya Garcia The challenge to identify meaningful characteristics of patients and physicians is a critical step towards the delivery of appropriate and cost-effective services in the health care industry. This poster presentation will display two data models which facilitate the identification of relevant patterns from the patient and physician perspectives. The Clinical Pathway Model: Understanding the Patient It is important to note that the construction of algorithmic logic used to capture the clinical course of a person is governed by: 1. the methods in which data is captured from the external environment and process internally; 2. what disease or medical condition is being investigated; 3. how the user wishes to aggregate the specific patient population The Clinical Pathway Model (CPM) utilizes a concatenated variable to "map" the sequence of relevant diagnostic and therapeutic interventions of a disease- based patient population proc freq, proc step, proc sql 3
82 PSUG - THEN AND NOW Cheryl Brown 4
83 QUIZZER: A Fun, Fast Paced Game Christopher A. Roper Quizzer is a fun, fast paced game in the format of the popular TV game show Jeopardy!. Written entirely using SAS/AF with Frames and SCL, this applic ation offers the opportunity to have a little fun while demonstrating the range of capabilities in the SAS system. The questions and answers are all related to the SAS system and are geared to be ch allenging enough for even the most experienced SAS expert, and yet simple enough for novice SAS users to be able to participate. There are two rounds of twenty-five questions, and a final quizzer round of one question where a team can bet it all. Contestants test their knowledge of SAS in a competitive, yet friendly environment of fair play, and unwittingly may learn a little more about the SAS system in the process. Why A Game? Quizzer was developed to help organizers of SAS related events in generating interest for the event. An event might be a local users group meeting, a training session, or any place SAS professionals might gather 2
84 Reducing Manual Operations - Year 2000 and Other Tedious Tasks Don Hodge Have you ever needed to search for a phrase or word in 200 programs? Five, ten, fifteen manual searches? With embedded blanks and special characters - like single quotes? And then had to go through those programs again for additional searches? This is the problem we faced in doing Year 2000 fixes. Not difficult, just very time consuming. To solve it, we turned to SAS. We produced a program which loads search phrases and parameters, then automatically does your searches against all or selected members of a PDS (partitioned data set). We can process hundreds of phrases from 2 to 30 characters in length and group various phrases together during output do loop, proc step, flat file, conditional do loop 9
85 Risk Evaluation after Heart Valve Replacement by PROC PHREG Choa Chen Identification of long-term risk factors after heart valve replacement can be quite challenging due to the nature of the covariates. Two specific factors need to be considered : (1) time-dependent covariates, and (2) the validity of the proportional hazard model. PHREG in SAS is a very convenient procedure for solving these problems. In addition to those commonly encountered problems such as variable selection and influence assessment, we will use a data set from our St. Jude Medical valve prothesis database to illustrate how to use DATA STEP statement to incorporate time-dependent covariates into the proportional hazard model and how to plot martingale residuals to check model validity proc phreg, time-dependent covariate, proc step, response variable, regression analysis, output, feature selection, influential observation, predictor variable, maximum likelihood estimation, estimate, likelihood function 7
86 Rolling with the Trends Sue Lidbury trend analysis, sas programmer 2
87 SAS Makes Reproducing Easy Carolyn Kuntz macro variable, raw data, proc step, data science, macro loop, proc report, macro definition, %if-%then-%else, proc print 6
88 SAS Program Efficiency for Beginners Bruce F. Gilsen dataset, where statement, if-then-else, character variable, subsetting if, proc step, conditional do loop, input statement, proc append, set statement, numeric variable, sas function, flat file, missing value 10
89 SAS Reports Converted to Microsoft Word Documents Aldona Rajecki This MS Word macro will reformat MVS computer- generated text output as a Word 97 document. It is designed to emulate MVS carriage control and character spacing. The SAS or other mainframe report must be created as a physical sequential or partitioned data set utilizing DCB attributes VBA or FBA prior to being transferred to a PC as an ASCII file conditional do loop, ftp 4
90 SAS Software G3D Animation and Graphic Viewer System Shi-Tao Yeh This paper presents an illustration of SAS G3D graphic animation and the SAS macros to generate HTML-based files for viewing SAS graphics on Web pages. The macros can create a graphic viewer system to review and manage these SAS graphs and G3D animation on Web pages. The discussion includes but is not limited to: Preparing SAS G3D graphics output, Converting SAS graphics into HTML code, Providing a SAS macro to generate a viewer system, Illustrating a sample viewer system. The SAS products used in this paper are: SAS BASE , and SAS/GRAPH with no limitation of operating systems macro definition, sas output 4
91 SAS-L Meets MS Exchange Jack N. Shoemaker proc step, proc freq 1
92 SCL for the Rest of Us: Non-Visual Uses of Screen Control Language Michael L. Davis Because of the increasing popularity of the SAS System to create Graphical User Interfaces (GUIs), many have come to believe that the language used with SAS/AF and SAS/FSP, called Screen Control Language (SCL), may only be used with visual objects. The truth is that SCL can be used in conjunction with or in place of the SAS macro language to automate SAS batch programs and to better interface them with the computing environment. Specifically, SCL programs may be submitted from within batch programs run on MVS and UNIX host computers. This includes even those host computers on which SAS/AF is not installed! sas log, macro variable, macro facility, catalog entry, dataset, proc step, where statement, sas base, batch job, proc print 10
93 Simplifying Complex Character Comparisons by Using the IN Operator and the Colon (:) Operator Modifier Paul H. Grant Jr. Complex character comparisons - comparisons of character values in a data set against a number of character constants which vary in length - are easier specified than coded. For example, how would you select the records of customers whose last names begin with 'Mc' or 'Mac'? How would you select the records of customers who live in ZIP codes beginning with '010' through '0131'? This paper will show you how to use the IN operator and the colon ( :) operator modifier to code these comparisons simply and clearly. A Sample Comparison To illustrate this discussion, let's use a more realistic version of the ZIP code comparison. Suppose we have to select the records for all the customers located in ZIP codes which begin with: '010' '011' '012' '0130' '0131' '0133' '0134' '0138' The difficulty is that we want to select some records based on the first three bytes of the ZIP code, others based on the first four bytes character constant, length statement 2
94 Simulating Randomness In 49C6 Style Lotteries: A Comparison Of Approaches And Data Processing Applications William J. Montelpare This paper discusses the introduction of the "lotto 649" in a Year three, undergraduate course in Quantitative Methods to demonstrate the concepts of randomness, and techniques to calculate Chi-square tests for randomness. The purpose of this study was to compare the randomness of one year of "lotto 649" draws against three computer-based random number generators of the 49C6 type. Random numbers were generated with a random number generator function of SAS, and a JavaScripted Internet random number generator (RNG). One hundred and four sets of six numbers were generated for each system to simulate a single year of "lotto 649" draws. In addition, (N=110) undergraduate students used the Internet RNG to produce 104 sets of six numbers. The most frequent six numbers drawn by each student were submitted to the instructor. The techniques to produce the randomly generated numbers, compare outcomes, evaluate distributions, and collect data over the Internet, are discussed goodness of fit, conditional do loop, proc freq 5
95 Simulations of Simple Epidemics in Closed Populations with SAS Robert J. Gallop This poster examines the question of how to model an epidemic. There are two standard modeling procedures: Deterministic model and Stochastic model. Deterministic modeling considers a structured mathematical framework, where one takes the actual number of new cases in a short interval of time to be proportional to the number of both susceptible and infectious individuals, as well as the length of the time interval. Stochastic modeling considers conditional realizations, where one assumes that one new case in a short interval of time is proportional to both susceptibles and infectives, as well as the length of the time interval. Although both definitions sound similar, there is a subtle difference: the deterministic model considers a set mathematical structure, where the stochastic model works on conditional probability structure. Too few investigators realize that both models are crucial to the proper interpretation of the epidemic process deterministic model, proc model 7
96 So Now You're Using PROC REPORT. Is it Pretty and Automated? Daphne E. Ewing PROC REPORT will display data. That's a given. That it is more powerful than the standard SAS reporting tool PROC PRINT is also becoming common knowledge. But what can PROC REPORT really do? It is certainly more than a glorified PROC PRINT, but it does take some additional work beyond mastering some of the basics of the procedure before it can be used to produce output that can rival that of a serious DATA _NULL_ step. This paper will discuss the use of several customized macros which can work together with some PROC REPORT options, and standard SAS title and footnote statements, to make your PROC REPORT output really shine. The purpose of this paper is to provide some methods, through a progressive series of examples, to enhance the output created when using PROC REPORT. It is assumed that you know how to write a basic PROC REPORT program including COLUMN, DEFINE, COMPUTE, and BREAK portions of the syntax proc report, proc step, sample, macro variable, footnote statement, macro definition, options statement, %if-%then-%else 10
97 So You're Still Not Using PROC REPORT. Why Not? Ray Pass Everyone who can spell SAS knows how to use PROC PRINT. Its primary use may be as a development tool to help in debugging a long multi-step program, or as a simple report generator when all that is really needed is a quick look at the data, or even a basic low-level finished report. However, if a report generation/information delivery tool with powerful formatting, summarizing and analysis features is called for, then PROC REPORT is the solution. PROC REPORT can provide the standard PROC PRINT functionality, but in addition, can easily perform many of the tasks that you would otherwise have to use the SORT, MEANS, FREQ and TABULATE procedures to accomplish. PROC REPORT is part of the Base SAS product, can run in both an interactive screen-painting mode or a batch mode, and should be the basic tool of choice when there is a need to produce powerful and productive reports from SAS data sets proc report, proc step, class variable, sample, proc print, proc tabulate 10
98 Spreadsheet Techniques to Speed SAS Coding - Revisited Glen Dalessandra Users of SAS in the Worldwide Human Resources Information Technology department of the Bristol-Myers Squibb Company have developed simple routines using PC based spreadsheet software to aid in the development and prototyping of procedures and programs. These routines reduce the need to retype variables or values in multiple IF THEN statements and values in the PROC FORMAT statement among other areas. Examples of typical requests and their possible solutions show many uses for this technique. These routines give SAS users the ability to manipulate data in the PC environment and allow them to better utilize mainframe resources as well as avoid retyping proc step, proc format 2
99 SQL Macro List to Retrieve Data from Large DB2 Databases Using the SAS Pass-Through Facility Thiru Satchi The SQL Pass-Through facility in the SAS/ACCESS interface software is a convenient tool to retrieve data from DB2 Relational Database Management System (RDMS) tables and to convert them into a SAS dataset. This paper demonstrates the benefits of using this feature, along with a macro that converts a SAS dataset into a list of key values. If these key variables are indexed on the DB2 table, such a macro will significantly decrease the required programming and the computer processing time proc sql, dataset, where statement, cpu time, proc step 2
100 SQL Query Window Classes: How To Add The SQL Calculated Column Expression Builder Class In Custom SAS/AF Applications Christopher A. Roper SQL (Structured Query Language) is the standard language used for querying all major databases, including SAP/R3, SYBASE, ORACLE, RED BRICK, DB2, and others. The SAS Query window creates SQL expressions using SAS/AF Classes that are available to the SAS/AF developer. One of these class entries is the Column Expression Builder Class, QWCLEXPR.CLASS in the SASHELP.SQL catalog. This is the class used by the Query window to build columns in SQL. This class may be called by any SAS/AF entry to present the same interface the SAS Query window uses as a column expression builder. This paper will cover what the Column Expression Builder Class is, how to incorporate it into a SAS/AF application, and the nuances of using this class effectively proc sql, where statement 7
101 SQL Query Window Classes: How To Incorporate The SQL Where Expression Builder Class In Custom SAS/AF Applications Christopher A. Roper SQL (Structured Query Language) is the standard language used for querying all major databases, including SYBASE, ORACLE, RED BRICK, DB2, and others. The SAS Query window creates SQL expressions using SAS/AF Classes that are available to the SAS/AF developer. One of these class entries is the Where Clause Builder Class, QWWHERE.CLASS in the SASHELP.SQL catalog. This is the class used by the Query window to build SQL where clauses. This class may be called by any SAS/AF entry to present the same interface the SAS Query window uses to build where clauses for SQL queries. This paper will cover what the Where Clause Builder Class is, how to incorporate it into a SAS/AF application, and the nuances of using this class effectively where statement, proc sql 9
102 Statistical Presentations Using the Power of PROC TABULATE C. Olivia Parr Rud PROC TABULATE is a versatile tool which can combine the functionality of PROC MEANS and PROC FREQ. Additional power exists in its ability to perform analysis on grouped data. This paper details the steps for constructing a table of marketing statistics using a variety of features. Missing values and formats are used to control the table's calculations. Labeling and selected options provide finishing touches for controlling the table's appearance proc step, proc tabulate, fee income, interest, proc format, proc freq, credit card, sample, label statement, missing value, interest rate, sample size 8
103 Strategies For Linking Medicaid Eligibility Files To Vital Statistics Birth Files To Assess The Efficacy Of Medicaid Managed Care Patrick J. Roohan proc step, dataset, proc sort, logistic distribution, logistic regression, proc delete, regression analysis 6
104 Table Look-up using Indexes, SQL, Arrays, and Formats without using Match-Merge Data Steps Sandra Lynn Aker proc step, proc sql, merge statement, automatic variable, proc sort, options statement, proc format, put statement, where statement 7
105 Techniques for Building a Successful Web Enabled Application Using SAS/IntrNet Software Mary Singelais (This paper is based on a presentation given in March 1998 at the SAS Executive Conference in Cary, NC) Using SAS/INTRNET tools, members of the INFOMAN development team at Bell Atlantic have developed a SAS reporting application, accessible to our clients from the web. Now data center operations managers at Bell Atlantic can access real-time mission critical data from their desktop, and instantly view static or dynamically driven reports that display graphics, spreadsheet style proc tabulate, excel, proc step, put statement, &variable, macro variable, sas programmer, %if-%then-%else 6
106 Telecommuting: The Workplace of the 90's Thalene T. Mallus The federal government, like industries in the private sector, has the ability to offer its employees flexible work arrangements. One arrangement which is becoming increasingly popular is telecommuting, where employees work for a portion of the week from home or an alternate remote location. As computer awareness, network access, and the World Wide Web are adopted into the mainstream, more and more employees in both the public and private sectors are finding that the tools necessary to successfully telecommute are easily within their reach. Although not every occupation is compatible with telecommuting, web service, dataset 10
107 The 'SKIP' Statement Paul H. Grant Jr. macro definition, proc step 2
108 The ABCs of MDDBs Marge Scerbo MDDBs (MultiDimensional Databases) are 'in' and SAS Institute is now offerin g MDDB software as a new product line. What exactly is an MDDB? Is there a simple explanation? The structure of an MDDB is not as complex as it mi ght seem at first glance. This paper will discuss the structure of MDDBs as well as their uses. Access options and functionality will be covered. In addition, a short, personal overview of the pros and cons of this stora ge technique will be offered class variable, proc step, proc means, data mart, dataset 7
109 The INPUT Statement: Where It's @ Ronald P. Cody input statement, infile statement, sas log, trailing @, data step, dataset, error message, missing value, date variable, numeric variable 10
110 The RESOLVE Function - What Is It Good For? H. Ian Whitlock There are four DATA STEP functions that com- municate with the macro facility macro variable, call symput, macro facility, call execute 2
111 The Scalable Performance Data Server: Real World Experiences Daniel J. Sargent The Scalable Performance Data Server (SPDS) is a high performance data store, and is SAS Institute's foray into true client-server processing. It offers user sites a number of benefits not available with standard SAS data engines. These benefits include virtually unlimited data set sizes, performance gains from parallel processing, advanced indexing, and better sorting, and more efficient disk space utilization. It also supplies a comprehensive set of tools to control user access. Being a true client-server product, it allows non-SAS applications access to the data via ODBC and an API. Finally, its flexibility allows the creation of secure and robust production and development environments. Oxford Health Plans has been using SPDS since early 1997. This paper will describe our experiences in the real world of using SPDS as the host for a data mart sas base, data mart, parallel processing, sas library, work library, proc sql 6
112 There's No Such Thing as Normal Clinical Trials Data, or Is There? Daphne E. Ewing Clinical Trials data comes in all shapes and sizes depending upon the therapeutic area, indication and phase of the trial. Quite a bit of the data arriving on Case Report Forms (CRFs) is fairly standard (e.g. Demography, Adverse Event, Medications, Laboratory, etc.), and hence can be stored in fairly standard data structures. Designing clinical data structures for data entry is important, but it should be done with some understanding of the analysis that will be performed. Once an appropriate clinical data structure is arrived at for data entry, it is important to then determine how to best use the data in the analysis environment. This paper will discuss data normalization and what it means along with the effects it has on SAS programs used to list and summarize clinical trials data. Side by side examples of programs and output from standard data structures versus normalized data structures will provide proof of the importance of normalization proc step, proc report, sample, proc means, normalization, by group processing 10
113 Tips and Techniques For Moving Between Operating Environments J. Meimei Ma,
Sandra D. Schlotzhauer
This tutorial introduces basic techniques pertinent to moving data files, catalogs, and/or applications between sites or operating environments. Our focus for files is on situations when you need to move data from one database format to another, not simply access files stored in another data management system using a ÒviewerÓ of some sort. To start, we define what we mean by ÒtransferÓ and ÒtranslateÓ in this paper. Basic procedures for transfer- ring files or catalogs are discussed and illustrated with simple examples. The importance of documentation and quality control procedures is stressed. Output (listings, tables) or graphic files are not covered. The primary audience for this presentation includes programmers, data managers, statisticians, and other people responsible for moving data and applications. With a new version of SAS software coming soon, everyone should learn about transfer issues related to upgrading. Only basic knowledge of the SAS system is assumed proc step, dataset, proc cport, proc contents, sas log, proc cimport, libname statement, proc catalog, quality control 10
114 User Experience SAS/GRAPH Charts & Plots Using MXG Neal Musitano Jr. IBM mainframe MVS computer performance data is collected using IBM System Management Facilities (SMF) and Resource Measurement Facility (RMF) data. The raw SMF/RMF data is processed with MXG and SAS software into an easily usable SAS format. This paper utilizes that performance data. The MXG Performance Database, i.e., daily, weekly or monthly contains millions of performance variable values all in SAS readable format. The intent of this paper is not to explain MXG software, which is SAS source code, but to display some user examples of SAS/GRAPH computer performance graphs utilizing the MXG Computer Performance Database as input. The SAS/GRAPH Charts and Plots displayed were produced on the mainframe using the Computer Graphics Metafile driver "CGMMWWA" for Microsoft Word or PowerPoint. The GOPTION of GACCESS=GSASFILE is used to write the graph to a file on the mainframe vertical bar chart, proc gchart 4
115 Using a SAS/AF Frame Application to Unify and Simplify the Many Lubricant Tests in the ASTM TMC Lubricant Test Monitoring System Christine Bogdon This paper will present the Lubricant Test Monitoring System (LTMS) SAS/AF program used at the Test Monitoring Center (TMC). The TMC, located at Carnegie Mellon University's Carnegie Mellon Research Institute (CMRI), monitors engine lubricant tests done by oil manufacturers and independent testing laboratories for the auto industry according to protocols established by the American Society for Testing and Materials (ASTM). There are over 30 different types of lubricant tests, that are performed at laboratories around the world. Test data is received via telecommunication or facsimile, and is stored in an internal Ingres database. SAS/AF is used, in a Frame application, to query this test data, perform statistical analysis, and output the results proc sql, proc step, data science, sas base, txt 7
116 Using AUTOEXEC.SAS to customize SAS Sessions Jennifer Price proc format, proc step 2
117 Using Logistic Regression to Predict Customer Retention Andrew H. Karp logistic distribution, logistic regression, regression analysis, response variable, proc step, proc logistic, predictor variable, customer retention, odds ratio, proc reg, r-squared, dataset, credit card, proc genmod 5
118 Using SAS and WordPerfect to Automate the Production of Study Data Tables Anne Horney dataset, create table, proc step 4
119 Using SAS MACRO Facility and DATA Step Functions for Automated and Selective Deletion of Records With Missing Information David Olaeye Conversion of a large PARADOX database (containing data collected from a clinical trial study of neonates with lung problems at birth) to a SAS data library produced some multiple patients' records with missing data on every other variable but the patient ID variable. What automated procedure can one adopt to selectively delete or subset such patients' records containing missing information in different SAS data sets located in a SAS data library. Using the new macro facility and DATA STEP functions supplied with SAS Software version 6.12, this article shows an automated SAS macro program that can be used to: (1) selectively delete or create a subset of such patients' records present in each SAS data file; (2) determine the number of SAS data files in the SAS data library having such records for further analysis; and (3) generate a summary report of the data cleaning tasks macro variable, libname statement, dataset, macro definition, macro function, character variable, macro loop, %if-%then-%else, proc step, numeric variable, data step, do loop, macro facility, data governance, sas function, if-then-else 10
120 Using SAS/GRAPH Software to Create Graphs for the Web Himesh Patel (Roger Chenoweth) Version 7 SAS/GRAPH software will contain several enhancements that enable users to easily display graphics in Web pages and to create "drill-down" graphs in Web environments. This paper describes these enhancements and presents some examples of their use. Note that these features are still under development; syntax and usage are subject to change prior to Version 7 release proc step, ods html, bar chart, proc gchart, proc print, numeric variable, output delivery system, if-then-else, character variable, proc sort 10
121 Using SAS/IML to Calculate L-Moments for the Univariate Distribution Shape Parameters Skewness and Kurtosis Michael A. Walega sample, proc step, sample size, proc univariate, macro variable, dataset, normal distribution, proc iml, logistic distribution, by group processing, standard deviation, outlier, box plot, central tendency, data science 8
122 What We Really Need is a %By Statement Ray Pass proc step, label statement 2
123 Working with SAS Date and Time Functions With Reference to Year 2000 Andrew H. Karp sysdate9, datetime variable, date variable, datepart, raw data, numeric variable, dataset, time variable, proc freq, proc step, datetime, time series analysis, if-then-else, mdy, time, subsetting if 8
124 Working with Subquery in the SQL procedure Lei Zhang PROC SQL is a major contribution to the SAS /BASE system. One of powerful features in SQL procedure is subquery, which provides great flexibility in manipulating and querying data in multiple tables simultaneously. However, subquery is the subtlest part of the SQL procedure. Users have to understand the correct way to use subqueries in a variety of situations. This paper will explore how subqueries work properly with different components of SQL such as WHERE, HAVING, FROM, SELECT, SET clause. It also demonstrates when and how to convert subqueries into JOINs solutions to improve the query performance proc sql, proc step, where statement, group by 6
125 WWW.SAS.RESOURCES.HELP Charles S. Patridge This paper will help the reader uncover these resources. Before I dive into my paper, I implore everyone of you to invest in your careers by continuously building and enhancing your SAS skill set by establishing your own personal library of SAS books, manuals, notes, etc. Would you trust a doctor who requests you to buy the latest textbook on "Side Effects of Drugs" to determine if the prescription he has just prescribed for you has any negative effects? No, of course not! Why should you, a SAS professional, be any different? If you are truly a professional, each of you has a responsibility of maintaining a certain degree of competency in your expertise. This doesn't mean you have to attend every SAS class, seminar or user group meeting! You can further your knowledge of the SAS products by various means. Ask to become a book reviewer for "Books by SAS Users" or volunteer to review a book for your local SAS user group news letter publications dataset, sas consultant 6
126 Your Base SAS Dollars at Work - What's New and Useful in Version 7 Sandy McNeill The BASE procedures group (a.k.a. Information Products) at SAS Institute has been hard at work adding new and useful features to the heart of the SAS System. This talk describes this work and uses generic "business oriented" examples to place these features in a context that demonstrates their use in everyday programming. Covered are: General additions to SAS Software that should make the programmers life an easier one. New SUMMARY/TABULATE options like percentiles, independent ordering of class variables, and the pre loading of the class- variable space using formats and/or a data sets of desired class level values. The ODS statement for producing output data sets and HTML output from all SAS procedures, High Fidelity Printing and more. ODS is an acronym for Output D elivery System. ODS specific additions to PROC REPORT, PROC TABULATE and the SAS/GRAPH Procedures. General Improvements SAS Software (finally!) permits table and column names to be up to 32 characters long sas base 10

Back to Conf go 1999 go 1997

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.