HOME QUICK SEARCH AUTHORS KEYWORDS HELP BUGS

SUGI 1998 Papers - Index

251 papers. Source: SAS Users Group International conference proceedings.

# Title
×
Authors
×
Abstract
×
Keywords
×
Extras Pages
1 %COMPARWS: Compare with Summary: A Macro Using PROC COMPARE to W rite a File of Di f ferences to Edit and Use for Updates Ronald J. Fehd Data review can be viewed as a two-step process: 1. Compare: review differences between two data sets. 2. Exception Report: review data consistency with range and logic checks. A data set may be updated with a file containing sets of these three statements -- ID, assignment and closure: if ID = 1 then do; <variable name> = <value>; * end; This paper reviews the PROC COMPARE output data set and the manipulation of that data set which is necessary to write a report to a file which contains update statements in an easily editable form. Summary information is written at the end of the update file. The output file is in this form: if ID = 1 then do; proc compare, proc step, macro variable, txt, proc freq, proc print, macro facility source 4
2 %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, sysrc, macro put, data step, dataset, %if-%then-%else, macro definition, macro loop source 7
3 A Bag of FSEDIT Tricks Derek P. Morgan,
Michael A. Province
source
4 A Comprehensive Codebook Generator Naoko S. Stearns,
John R. Gerlach
A recent project at Research Triangle Institute (RTI) involved a large transportation survey that required validating and packaging of the data, in the form of ASCII text files and SAS data sets, for use by the public domain. In addition, a detailed codebook was produced for each edited file, which included a frequency distribution for categorical data and descriptive statistics for continuous data, along with the usual information concerning data attributes. In order to facilitate the process of generating a codebook for each edited file, RTI developed a SAS application that allowed those people involved with the project to produce the codebook independently. Upon creating the codebook listing, the member of the project team, or end-user, would export the listing from SAS creating a RTF (Rich Text Format) file, then, import the RTF file into a Word document producing the finished deliverable. This paper explains the SAS solution that generates the codebooks for a large survey project proc freq, proc step, numeric variable, proc format, macro loop, proc sql, macro definition, %if-%then-%else source 4
5 A Data Access Challenge: Build a SAS Frame Application for Access to an Informix Data Warehouse John E. Bentley First Union National Bank has built a two-terrabyte data warehouse containing current and historic data at varying levels of granularity. The driving force behind the project was the need for improved statistical modeling to support the Bank's marketing efforts as it moves into the 21 st century. The marketing data analysts were already proficient with SAS statistical procedures but needed a user-friendly tool to extract and transform data from the warehouse. Due in part to the data warehouse architecture, the final application design requirements were complicated. This paper presents an overview of the project and of how SAS System software was used to meet the design challenges sample, proc sql, sample size, proc step, extract, dataset, random sampling, data science, data analyst, model deployment, sql pass-through source 7
6 A Data Warehouse Implementation Using the Star Schema Maria Lupetin This work explores using the star schema for a SAS data warehouse. An implementation of a data warehouse for an outpatient clinical information system will be presented as an example. Explanations of the many data warehouse concepts will be given. The Goal of This Paper: The purpose of this paper is to introduce the reader to data warehousing concepts and terms. It will briefly define concepts such as OLTP, OLAP, enterprise-wide data warehouse, data marts, dimensional models, fact tables, dimension tables, and the star join schema. The present study will also explore the implementation of a data mart for an outpatient clinical information system using the star schema After reviewing the concepts and approaches, one will conclude that the SAS family of products offers an end to end solution for data warehousing. Why Implement a Data Warehouse or Data Mart? In the past, a common system application has been of the OLTP kind: On-line Transaction Processing fact table, dimension table, data mart, data warehouse, star schema, proc step, proc means, variable, proc sql, proc freq source 5
7 A Dynamic Web Application: Using SAS/IntrNet and Webb Publishing Software Vecdet Mehmet-Ali sample, sas library source 10
8 A Flexible System for Conversion of DBF Tables into SAS Mel Widawski The aim of this system is to import the tables from a dBase database system as automatically as possible under adverse conditions. When the entry system is constantly changing and in control of another, you need a convenient way to bring in all available tables. Besides doing this, the system allows for the substitution of variable names, special transformations, and conversion of look-up tables to SAS formats. It is completely modular, and allows for an environment where multiple programmers may be working on importing the same data. The program runs regardless of which modules are present. Switching from a test environment to the production, and back, requires only a single string change in the driver. You may also produce a mapping of variables to formats across data sets dataset, format statement, character variable, proc contents, macro definition, macro variable source 6
9 A General Purpose Macro to Obtain a List of Files: Plus Macro Programming Techniques Mel Widawski Would you like to be able to accomplish any of these tasks automatically? 1) Access and convert all .dbf files in a given directory. 2) Write a SAS macro to maintain an annotated list of files all files in a directory. 3) Create LIBNAME statements for all transport files in a directory. 4) Process all files of a given type in a directory for any reason. In order to accomplish any of these tasks you would need to obtain a list of files. This macro produces a macro variable with a list of all of the files in a directory. It may be further restricted to produce a list of files of a given extension in that directory. In the course of presenting this macro the following techniques will be covered: X (host command), && for delayed processing, * &&& for ampersanding the contents of a macro variable. Special provisions have been made so that a list of files longer than the 200 character limit for character variables may be created macro variable, macro call, macro parameter, %if-%then-%else source 3
10 A Generalized Macro-Based Data Reporting System to Produce Both HTML and Text Files Jeff F. Sun This paper will address the inter-connection between SAS System and Inter-/intra-net technologies with a macro-based reporting system. This system is a generalized macro- based data reporting system, which can be used to create customized HTML format files for Web browsers and text format files for hard copies. This system was initially built in the PC environment based on a 3M system structure, which can make it easy to build, update, and maintain the whole system. The production of text files follows the regular process of external file creation in the SAS System. The creation of HTML files uses DATA _NULL_ and HyperText Markup Language to produce the HTML 3.2 tag set supported by Netscape or Microsoft Internet Explorer or other Web browsers. Three obvious advantages of using this system can be seen as follows. First of all, this reporting system provides us a tool to extend our information delivery ability with SAS System txt, %if-%then-%else, sas programming, macro loop, macro definition, proc step, proc printto source 6
11 A GUI for Enhanced Insight into Data in a University Setting: SAS/EIS and SAS/AF Frame to the Rescue Cecil R. Hallum,
Melinda Miller
proc step, proc means, output delivery system, sample, length statement, proc gchart, proc sql source 6
12 A Guide to Managing a SAS Data Warehouse for Use Across an Intranet Charles W. Bininger With the growing popularity of the Internet, companies have recognized that Intranets can be a valuable tool for dispersing data to their employees. SAS Institute has provided new tools for allowing Java applications access to SAS data sets. In late 1996, SAS Institute released a beta version of the Java Database Connectivity (JDBC) driver that when used with SAS ShareNet gave users the power to extract data to their desktop. While this paper will not discuss the implementation of the JDBC driver, it will provide direction and discuss issues to keep in mind when implementing the SAS ShareNet Server data warehouse, jdbc source 5
13 A Hands-on Introduction to Creating Dynamic Webb Pages Mickey Waxman,
Larry Hoyle
This hands-on workshop will give a basic introduction to using SAS Application Dispatcher to create World Wide Web pages on demand. Workshop participants will learn how to create an HTML form which will invoke a SAS program on a server via the Application Dispatcher. They will also learn how to construct a SAS program which produces web pages upon request from such an HTML form. No previous knowledge of HTML is required macro variable, data step, error message, sas log, sas output, macro definition, proc step, %if-%then-%else source 9
14 A Macro for Converting Mean Separation Output to Letter Groupings in PROC MIXED Arnold M. Saxton This paper describes a SAS macro, PDMIX612, which takes a set of probability values for testing all pairwise differences among means, and converts this information to letter groups, where means with a common letter are not statistically different at a specified alpha level. The macro is specifically designed to use the output produced by the PDIFF option on the LSMEANS statement in PROC MIXED, but could also be used for PROC GLM output. The converted output from PDMIX612 is more compact and easier to interpret. A further advantage is that the use of letters to indicate differences is widely used, so PDMIX612 output can be copied directly to ta- bles for publication. It requires SAS 6.12, and the SAS/STAT and SAS/IML products, but otherwise should run on any platform proc step, proc mixed, proc genmod, proc glm, proc calis, proc iml, p-value source 4
15 A Macro to Generate All Combinations of n Items Taken k at a Time (How It Was Designed and Written, and How It Might Be Adapted to Other Uses: A Programming Example) Francis J. Kelley Developing a program, especially one that may be used several times or in ways not originally considered, tends to be a step-by-step process. One begins with the specific problem to be solved and proceeds to the more general. The stopping point often may not be known in advance; indeed, the successive refinements usually arise from a new or unanticipated need. The program, as developed in this paper, closely follows an actual problem involving combina- torics the macro was used to resolve. It cannot be said to be a programming model (although it did have two characteristics desired by programmers: it did the job(s) desired and it was fun to write). This poster describes how it was developed, written and expanded; as such, it is a "programming example." macro variable, out=, proc freq, proc step, in=, macro facility, macro definition source 9
16 A Method to Generate Kaplan-Meier and Adjusted Survival Curves Using SAS Bharat K. Thakkar,
Kwan Hur,
William G. Henderson,
Charles A. Oprian
Kaplan-Meier(K-M) survival curves can be generated using SAS PROC LIFETEST. In the presence of significant covariates, adjusting the survival curves is necessary. In this paper a step by step method is presented to produce survival curves that adjusted for the covariates. This is accomplished using SAS PROC PHREG and SAS PROC GLPOT survival function, proc step, proc phreg, regression analysis source 3
17 A Methodology for Developing SAS Applications for Use in Multiple Languages Christopher A. Roper,
Michael Gilman,
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 source 4
18 A Revolution in Data Analysis: How New, Very Powerful, Easy to Use, Graphical Data Analysis Tools and Techniques Can Empower Even Novice Subject Matter Specialists Dave L. DesJardins This paper outlines a framework for a revolution in our data analysis capability. This is because of new powerful computer capabilities married to equally powerful/flexible graphics software packages. To illustrate this new capability, it highlights one of these new graphical techniques for data analysis. A basic factor in this technique is the U.S. Census Bureau's new, easy to learn/understand, point-and-click graphical data analysis capability. This paper also suggests that current techniques for imputing missing or erroneous data values in the Bureau's surveys of Business and Industries can be markedly improved. Proposed is the use of Leverage Plots -- a technique now over a decade old -- but, because of three key developments in technology/capability at the Bureau today, a very applicable methodology to do this task data science, outlier, predictor variable, missing value, correlation, imputation source 8
19 A Revolution? Development of Dynamic and Hypertext Linked Reports with Internet Technologies and SAS System Jeff F. Sun The current SAS-based reporting system provides us with printed reports and tables with a spatial, physical, and static way and a fixed linear structure. Even though indexes, tables of contents, or cross-references exist super- imposed on this linear framework and provide added value, often critically important, they do not change the underlying structure. As a result, there are some disadvantages for the linear structure multimedia in the current SAS-based reporting system. First of all, in order to put all these tables and reports together logically, one must organize them manually. In addition, a particular number which was processed and calculated in a table cell cannot be easily drilled down in a dynamic and interactive manner. The most common way we have for the current reporting system is to use footnotes to provide further or detailed explanation or information. Very often the track for further information might be much more time-consuming and labor intensive put statement, proc print source 6
20 A SAS Macro Implementing an Extension of McNemar's Test for Clustered Data Michael L. Lieber,
Cindy Ashley
McNemar's test is often used to compare two proportions estimated from paired observations. Obuchowski (Statistics in Medicine, in press) has proposed a method extending this to the case where the obser- vations are sampled in clusters. This degrees of freedom, call symput, correlation, macro variable, sample source 6
21 A SAS Macro that Creates Numeric Decimal Formats John Q. Zhang SAS Macro function, %EVAL() function, performs integer arithmetic only. Calculations on fractions or decimal numeric are definitely not allowed. This paper introduces a macro that has managed to avoid the restriction and creates numeric formats that have adjustable ranges of decimal numbers. The numeric formats are user-defined. The range specifications (including numeric ceiling and floor) can be handled or adjusted by manipulating the concerning macro parameters. The paper shows definitely how powerful and flexible SAS Macro language really is. The SAS products concerned in this paper are mostly SAS/BASE and/or Macro. With respect to operating systems, there is not supposed to have any limit to the feasibility of the macro as long as SAS Macro facility is available. The intended audience should hopefully have some experience in programming in SAS/BASE (including Macro Language). The skill level of the users is preferably intermediate macro definition, proc format, proc step, macro loop, do loop, macro variable, macro facility, %if-%then-%else source 6
22 A SAS Macro to Calculate Exact Confidence Intervals for the Difference of Two Proportions Paul R. Coe When comparing two proportions, it is often desirable to have more information than simply the p-value from a hypothesis test. The SAS PROCEDURE FREQ provides both an approximate and an exact p-value, as well as an approximate confidence interval for the ratio of the two proportions. Calculation of the difference of two proportions and any confidence interval for this difference, however, must be done in a DATA STEP. I have written a SAS macro to calculate exact confidence intervals for the difference of two proportions based on an algorithm previously only implemented in FORTRAN (Coe and Tamhane 1993). I have also written a confidence interval, sample, sample size, relative risk, binomial distribution source 6
23 A Tour of UnifyPow: A SAS Module/Macro for Sample-Size Analysis Ralph G. O'Brien UnifyPow is a freeware SAS module/macro that performs statistical power analysis and other matters related to sample-size choice. Its functionality covers an extensive set of methods. One- group tests include the t and Wilcoxon for H 0 : m = m 0 ; the binomial and Z approximation for H 0 : p = p 0 ; t and Wilcoxon for paired means; McNemar's for paired proportions; and Fishers's r- to-Z for H 0 : r = r 0 . Two-group tests include t and Wilcoxon- Mann-Whitney for H 0 : m 1 - m 2 = d 0 ; c 2 , likelihood ratio (LR), and Fisher's exact for H 0 : p 1 = p 2 (association in 2 · 2 tables); r- to-Z for H 0 : r 1 = r 2 . J-group tests include ANOV A via the cell- means model with general linear contrasts; c 2 and LR tests for proportions (2 · J tables) with general linear contrasts on J logits. Also covered are the test of H 0 : b j = b j0 in a multiple regression model predicting Y from q X's ("Y | q X's") in which X j has tolerance Tol(X j sample, binomial distribution, sample size, likelihood function, standard deviation, anova, correlation, power analysis, logistic distribution, regression analysis, proc freq, rank test, proc step, effect size, exact test, f-test, monte carlo, wilcoxon test, proc glm, main effect source 10
24 Accessing Data from Your PC Using Version 7 of the SAS System, Presented by Michael Ho, SAS Institute Inc. Roger E. Sanders Data access technology is changing rapidly in today's computing environment, especially on the PC platform. The Version 7 release of the SAS System is the first release that contains a newly designed suite of SAS/ACCESS /GA3software products that strive to take advantage of recent technological advances in data access. This paper provides an overview of the SAS external data access capabilities that are available on the PC. Emphasis is placed on the SAS/ACCESS products, the Import/Export Facility, ODBC drivers that are available, and conversion utilities for existing MS SQL Server and AS/400 /GA3 view descriptors proc step, proc sql, sql pass-through source 1
25 Advanced Macro Topics: Utilities and Examples Arthur L. Carpenter Numerous utilities have been created using the SAS Macro Language and many of the newer utilities take advantage of recent changes and enhancements to the SAS System. The examples of macro utilities presented in this paper include the use of: /G43 SASHELP views /G43 DATA STEP and SCL functions using macro facility, macro variable, autocall macro, macro definition, macro function, proc step, macro loop, %if-%then-%else source 6
26 Advanced Techniques for Creating Format with Variable Values Erika Y. Liu It is often necessary to have formats in order to generate tables or to print off datasets in certain nice layout. Programmers usually use PROC FORMAT with lots of value statements to do it, which is tedious and time consuming, and also typing in the name of each variable manually is prone to error. There is a more efficient way to create formats without having to write VALUE statements by altering the variable values. This paper first explore a way of specifying options in PROC FORMAT to use variable's values to create its format, and then demonstrates how to generate generic codes to make formats automatically by using MACRO. An example of Adverse Events is presented to demonstrate how to use this simple and helpful tip adverse events, proc format, proc step source 3
27 All Zipped Up and Nowhere to Go Louise S. Hadden,
Jim McIntosh
Computer programmers and analysts are containing up to 650 MB), while the 1993 frequently presented with disk space and 1994 data appeared as several files constraints, as our sources of data have containing selected variables for each year. become removable media. Cartridges, tapes The analysis design required selection of and CD-ROMS can contain far more data records (hospital discharges) by scanning than there is space available on the computer fifteen diagnosis codes and fifteen procedure platform being utilized. This paper codes for particular diseases and outcomes, illustrates one method for dealing with the assigning records to designated market space quandary many programmers face on a groups, and producing tabulations by market daily basis. Most of the examples presented group for final presentation proc step, input statement source 7
28 An Information-Gain Measure of Fit in PROC LOGISTIC Ernest S. Shtatland,
Mary B. Barton
This paper is a continuation of the paper [1] presented p. 1088, and [3], pp. 413-414), PROC PHREG - three at NESUG, 1997. In [1] it was proposed to use ([3], p. 832), PROC MIXED - six ([3], pp. 547, 606- information-gain or information-difference statistics as 607), and so on. The expertise required to understand the most natural and most meaningful criteria of and interpret properly each of these statistics is not goodness of fit in such popular statistical modeling available to all users. Therefore it would be desirable to procedures as PROC REG, LOGISTIC, GENMOD, have a universal criterion with an easy to understand PHREG and others. The information-difference statistics meaning that would be common for have a very convenient property of additivity that allows many applications. SAS users to evaluate the contribution of an individual explanatory variable or a group of explanatory variables in terms of information gain in bits logistic distribution, proc step, regression analysis, proc logistic, likelihood function, logistic regression, sample, proc reg, degrees of freedom, sample size, predictor variable, chi-square test source 6
29 An Interactive Graphical Interface for Hierarchical Classification of Data Generated through Individual Particle Analysis Kyle E. Thomas,
Art Alexander,
Aamer Raza
Hierarchical cluster analysis has been found to be an effective means of discerning joint distributions in large volumes of data. The generation and interpretation of often hundreds of plots and descriptive statistics, however, can make such analyses extremely labor intensive. O'Brien & Gere has developed a program using SAS/AF and SAS Screen Control Language to facilitate the hierarchical classification of data generated through individual particle analysis (IPA) proc means, cluster analysis, hierarchical clustering source 4
30 An Introduction to PROC SQL Rosalind K. Gusinow,
J. Michael Miscisin
proc sql, proc step source 10
31 An Introduction to PROC SQL Rosalind K. Gusinow,
J. Michael Miscisin
PROC SQL is a powerful Base SAS PROC which combines the functionalit y of the DATA and PROC Steps into a single procedure. PROC SQL in many cases can be a more efficient alternative to traditional SAS code. PROC SQL can be used to retrieve, update, and report on information from SAS data sets or other database products. This workshop will concentrate on SQL's s yntax and how to access information from existing SAS data sets. Some of the topics covered include: /G04Write SQL code using various styles of the SELECT statement. /G04Dynamically create new variables on the SELECT statement. /G04Use SQL options to control the appearance of reports. /G04Create multiple reports on a single PROC SQL statement. /G04Create reports containing percentages using proc sql, proc step, select, group by, order by, proc sort, where statement source 12
32 An Introduction to SAS/ASSIST Software Linda P. Atkinson regression analysis, proc means source 6
33 An Introduction to SAS/FSP Software Terry J. Fain,
Cyndie B. Gareleck
SAS/FSP is a set of procedures used to perform full-screen interactive data entry, data editing, data retrieval, and data query. This tutorial provides a basic overview of SAS/FSP software under version 6.12 of the SAS System. Topics include: creating a new SAS data set customizing data screens data entry data query * browsing SAS data sets The focus of this tutorial is on PROC FSEDIT although other procedures such as PROC FSBROWSE and PROC FSVIEW will be briefly discussed. Screen control language (SCL) is considered an advanced topic and will not be covered in this tutorial proc step, dataset source 5
34 An Introduction to the Analysis of Repeated Measures for Continuous Response Data using PROC GLM and PROC MIXED Robert M. Hamer,
Pippa M. Simpson
Many methods have been used for the analysis of repeated measures data. The classical approach is to treat the experimental units in a repeated measures study as blocks in a blocked design. Multivariate approaches make fewer assumptions than the classical approach, but in general are less powerful when the assumptions that the classical approach requires are met. The newest repeated measures, proc step, proc mixed, proc genmod, clinical trial, anova, covariance, null hypothesis, response variable source 4
35 An Investigation of the Efficiency of SQL DML Operations Performed on an ORACLE DBMS using SAS/ACCESS Software Annie S. Guo In an international epidemiological study of 2000 cardiac surgery patients, the data of 7000 variables are entered through a Visual Basic data entry system and stored in 57 large ORACLE tables. A SAS application is developed to automatically convert the ORACLE tables to SAS data sets, perform a series of intensive data processing, and based upon the result of the data processing, dynamically pass proc sql, data wrangling, modify statement, sample, oracle, where statement, dataset, proc step source 5
36 Analysis of the National Endowment of the Arts Using SAS/STAT Software James D. Ryan The debate concerning the federal government's role in the support of the arts had lasted for over 140 years when, on September 29, 1965, President Lyndon Johnson signed the National Foundation on the Arts and the Humanities Act, establishing the National Endowment for the Arts and the National Endowment for the Humanities. In the subsequent thirty years the National Endowment for the Arts has awarded over 100,000 grants to arts organizations and artists throughout the nation. The number of state arts agencies has grown from 5 to 56. Local arts agencies now number over 3,800. Nonprofit theatres have grown form 46 to over 425, large orchestras have doubled, opera companies have increased six-fold, and there are ten times as many dance companies now as there were in 1965. The following study, using the SAS System examines the relationship between the state of the economy and the amount of federal funding to the arts anova, response variable, proc step, regression analysis, residual, proc reg source 6
37 And All With The Push of a Button! Ray Pass macro variable, excel, macro definition, proc step, macro call, dataset, proc printto, txt source 8
38 Application Development in SAS/AF Software Using Class Libraries Carl R. Haske Proper applications are logically divided into functional layers. Classes promote the logical organization of components into generic and application-specific elements. This division allows a developer to derive generic classes that are reusable in different types of software systems. Classes also enhance usability because they give applications a consistent presentation. For the developer, the advantages of using classes are rapid application development and consistency across multiple applications. The consistency provided by classes contributes to a reduced learning curve for end users as they become familiar with many applications developed with use of the same class libraries. Standard classes handle system-level details like registering users, maintaining a data dictionary, tracking system activity with an error log, typical database management functions, and typical dialogs with the user. Classes also provide default behavior in an application catalog entry, if-then-else source 9
39 Application of Maximum Contrast Method to Biomedical Data Using MU L TTEST Chikuma Hamada,
Junji Kishimoto
The maximum contrast method was introduced to elucidate dose-response shape and the examples of SAS programs utilizing the MULTTEST procedure were demonstrated for both quantitative and binomial data, especially, in animal toxicity studies and phase II clinical trials. We also evaluated the statistical power of the maximum contrast method. It was concluded that this regression analysis, power analysis, phase ii, alternative hypothesis, bootstrap, resampling, sample, clinical trial, response variable, sample size, correlation source 6
40 Are You a Commander or a Mouser? Heidi Markovitz sample, sas base source 4
41 Army Hearing Evaluation Automated Registry System (HEARS) Corporate Data Reporting System - A Customized EIS Solution Krista A. Elspas,
Julie Shadoan
The Army HEARS Corporate Data Reporting System is a customized enterprise information system operating in a client/server environment, utilizing SAS/AF Frame entries for its user interface. The system is designed to provide the Army Hearing Conservation Program managers and consultants with the ability to easily generate a series of standard and customized reports that utilize corporate data collected from all of the Army hearing conservation programs operating worldwide. Standard reports are generated using base SAS software on an MVS mainframe, and then stored on a Windows NT server for quick access locally. Custom report requests can also be submitted locally from within Windows 95 via SAS/CONNECT for execution on the MVS mainframe using SAS Macros and DATA steps. When a custom report is completed, it can then be downloaded to the requester's PC for viewing and/or printing via the REPORT procedure excel, proc step, proc report, dataset, macro variable, sas base, proc download, %if-%then-%else, libname statement, macro definition source 6
42 Assessing Dose-Response Information in Phase III Clinical Trials or . . . Why You Shouldn't Believe the Dosing Information on the Label Robert M. Hamer,
Pippa M. Simpson
put statement, output delivery system, file statement, data step, dataset, proc template, proc step source 9
43 Automatic Referencing SAS Macro Variables Using Array Processing, CALL SYMPUT Routine and DO Loops Pei-Chun T. Wan This paper illustrates how one can use the combination of array processing, SAS macro facility, CALL SYMPUT routine, and iterative DO loops to automatically assign titles and labels to address corresponding variables in the frequency tables. In the Adult/Adolescent Spectrum of Diseases (ASD) project at Centers for Diseases Control and Prevention(CDC), there is a need to produce frequency tables for each of the 23 1987- definition AIDS Opportunistic Illnesses (OI). By using the technique described herein, one can set up an array with all 23 AIDS OI names, use SAS macro to set up macro variable for future reference, use CALL SYMPUT routine to assign value to macro variable which can be used later in the title statement and label statement for each AIDS OI name in the frequency table, and use DO Loops to perform this task repetitively for each of the 23 AIDS OI names proc freq, macro variable, call symput, title statement, do loop, label statement, array source 4
44 Basic Methods to Introduce External Data into the SAS System Andrew T. Kuligowski,
Nancy Roberts
The SAS System has numerous capabilities to store, analyze, report, and present data. However, those features are useless unless that data is stored in or can be accessed by the SAS System. This presentation will provide an overview into some of the methods that can be used to pass data into the SAS System. It will range from Base SAS's INFILE and INPUT statement to more advanced mechanisms such as SAS/ACCESS. It is hoped that there will be some aspects of this presentation for the beginning, the intermediate, and perhaps even the advanced user of the SAS System. It should be noted in advance that the details of this topic can vary from operating system to operating system. This presentation will be primarily aimed at providing an overview which is independent of operating system. The reader is strongly encouraged to use this paper in conjunction with the appropriate manuals and "Operating System Companions" to gain a full understanding of the options available to them input statement, proc step, infile statement, dataset, proc copy, filename statement, character variable, libname statement, column input, list input, named input, excel, proc sql source 10
45 Becoming "Webb Enabled "with SAS/IntrNet Software Edward A. Tasch,
Stacy Buffington
source 6
46 Becoming a SAS Master Ginger Carey,
Helen D. Carey
sample, data warehouse source 8
47 Behind Marketing Data in Financial Industry Flavio Addolorato,
Luigi Ferrari,
Luigi Guastalla,
Luca Bodio
the objective of this work is to test the use of several analytical instruments ("data mining tools") in order to pinpoint some of the behavioural characteristics of the bank's retail clientele sample, current account, proc freq, balance, proc corresp, savings account, cluster analysis source 11
48 Better Titles: Using The #BY V AR and #BY V AL Options Arthur L. Carpenter Although it has been possible to place macro option #BYLINE places the BY-line in the title variables in titles and footnotes for quite awhile, itself. Releases 6.07 of the SAS System and later include the ability to place BY variable values The name of variables in the BY statement can and names in the titles and footnotes as well. be added to a title by using the #BYVAR title These options are only documented in SAS option. The value taken on by the BY variable Technical Report P-222 and are therefore under can also be added to a title through the use of utilized. the #BYVAL title option. The names of BY variables and the BY variable values are inserted into titles and footnotes using the #BYVAR and #BYVAL options. There are The following PROC PRINT uses a BY two forms of these options and they will statement with one BY variable (STATION). accommodate more than one BY variable. Several examples will be presented using these options by group processing, proc print, options statement, proc step source 3
49 Bootstrapping the Standard Error of the Mediated Effect Chondra M. Lockwood,
David P. MacKinnon
Mediation analysis seeks to go beyond the question of equations, using the notation from MacKinnon, Warsi, whether an independent variable causes a change in a and Dwyer (1995). dependent variable. Mediation addresses the question of how that change occurs. When a third variable is thought to be intermediate in the relationship between two variables, it is called a mediator. In order to test the mediated effect for significance, or to create confidence limits for the effect, the standard error of the effect is needed. Estimates of the standard error can fluctuate widely when sample size is small or when the variables are not normally distributed. Bootstrapping is a method that resamples from an original sample to derive a more accurate estimate than is found through traditional proc calis, bootstrap, sample, confidence interval, sample size, probability distribution, response variable, regression analysis, predictor variable, mediation analysis, proc step, proc reg source 6
50 Building Clinical Information Spaces on the World Wide Web Paul C. Wehr In clinical research, a clinical investigation is made up of a research protocol, data, analyses, and a research report. Each component depends on, or refers to, information contained in the other sections, and within itself. The goal of Clinical Research-to demonstrate that a drug or medical device merits approval-is really nothing more than an information space. This paper will show that using SAS Software, and the capabilities of the Web, one can create a convenient system for navigating this space, and even lay the foundation for a fast, inexpensive, and effective computer-assisted new drug application (CANDA) clinical research, crf, proc step, proc tabulate source 4
51 Building the Framework for Enterprise Data Analysis in the Semiconductor Industry John T. Stokes,
Roger Thompson
data science, data warehouse, data standard source 6
52 Building Your Own SAS Data Warehouse and Developing a Tool Set for Managing It Di Meng,
Charlie Bastnagel
source
53 Care and Feeding of a Healthy SAS User Group Robin E. Way Regional and local SAS users groups create obvious benefits for members, including education, networking, and career opportunities. Organizers and sponsors of users groups also receive benefits, including leadership opportunities; experience with event planning, financing, and logistics; and indirect influence on local and regional economic development. This paper will describe lessons learned from one person's broad exposure to and experience with local and regional SAS users groups. Specific attention is devoted to the core competencies of a user group's leadership sas consultant, sas programming source 6
54 CATALOGER: An Application Development Tool to View, 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 source 6
55 Chart Smart: Design Graphs to Inform and Influence LeRoy Bessler source 10
56 CHEKOU T : A SAS Program to Screen for Outliers James Handsfield At various times, most researchers are faced with the need to screen for outliers. Many statistical programs will do this with more or less ease. SAS has two PROCs which will calculate several outlier statistics. They can produce a report and output data set which require further manipulation to use. This data manipulation opens the door of opportunity for program errors which might be difficult to detect. The more statisticians can rely on known code, the more comfortable they can be with the outcome. CHEKOUT uses several macros to write the value detected as an outlier and its associated RSTUDENT statistic in the output data set from PROC GLM to a text file, OUTLIER.SAS. Also written to this file is the default option to convert the value to missing, and the file is printed as an outlier screening report outlier, proc step, proc genmod, confidence interval, proc glm, macro variable source 3
57 Choosing the Right Platform for SAS Client/Server Applications Gregory S. Barnes Nelson,
Richard Swirski
source 10
58 Client/Server Application Design Strategies for Small Development Teams Raymond L. Ransom,
Sharon Mosley-Hixon
This paper will describe and discuss a real world of our limitations. We hope that you benefit from our application development experience. It is meant to experience. provide guidance as well as elicit discussion. As with most development teams, it was much easier to list our resources than the vast needs of our target audience. We The Division of Sexually Transmitted Disease constraints influenced the design and contents of the and Prevention (CDC) collects data on occurrence of application. As with any endeavor with the SAS STD's and disseminates this information throughout the System, this is but one of many ways in which we could world public health community. The division also have proceeded. This paper will attempt to document our conducts, supports and funds millions of dollars in options and why we chose the routes we have. prevention and treatment activities including education, dataset, data warehouse source 9
59 Clinical Warehouse Enhancement: A Methodology for Linking Heterogeneous Databases Sharon Schiro,
Rose M. Reedy,
Rob Lenderman,
James Zadinsky,
Vicki Harp
Health care information is crucial to making decisions that will help to contain the costs of health care. Within the military community, the effort to improve medical care, to meet multi- level management information needs, and to support the readiness initiative is hampered by the storage of Department of Defense (DoD) medical information in large legacy databases in a format that is difficult for physicians and administrators to use for analysis and reporting. The military medical database system is fragmented over multiple physical sites, and includes several legacy systems (Zadinsky, 1997). Portions of a patient's medical record may be stored in multiple databases of differing structures at multiple medical treatment facilities (MTFs). Access to the medical information requires the linking of multiple databases, both military and civilian txt, cross-sectional data source 4
60 Convex Hull Test for Ordinal Categorical Data Using the SAS System Dayong Li,
Huanhong Xia
This paper reviews the newly developed statistical procedure Convex Hull Test (CHT) for categorical data analysis, and provides an algorithm and SAS codes to implement the statistical procedure sample, clinical trial, proc freq, macro definition source 6
61 Creating a Flexible Parameter Driven Reporting Program Using Global Variables Karen Dudley By using global variables as parameters, a program can be created which will produce an infinite number of information variations from a single program. The parameters can be toggled on and off by setting up a test flag variable. The parameters may be a single value, a range of values, or a combination of values. This approach requires only a single entry of the parameters for multiple usage. The global variables can be used to subset the data, create flexible MERGE statements, and generate meaningful report titles. Additionally, the values can be held in a permanent file to be used by other related programs. Programs developed using this flexible structure can easily be used by business analysts and other non-programming users to create reports to meet their particular business requirements macro variable, merge statement, proc format, proc step source 3
62 Creating a Home Page on the WWW for Your Local User Group An Unlimited Resource for Local User Group Recruitment Strategies JoAnn R. Matthews At the present time, there are more than 200 local or special interest SAS user groups in the U.S. alone, and this number continues to grow. Only a small number, however, have utilized the internet to reach their potential members via a home page. Given the popularity and unprecedented growth of the Internet, the World Wide Web offers an exciting way to publicize local user group activities and increase membership. In addition, a basic understanding of web-site development and hypertext markup language (HTML) concepts will significantly broaded a SAS programmer's skill base. This paper is designed to be an introduction to homepage development. Whether creating a home page for a user group, a company, or a personal website, the HTML language is the same. This paper provides a brief overview of the history of the Internet ascii, data cleaning source 9
63 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 create table, data science source 6
64 Creating and Maintaining a Central SAS Library for Health Care Management William C. Murphy In our organization, several programmers are working on the same data sets simultaneously. These data sets contain the health care information for over a half a million individuals and can be quite large. In order to prevent the data sets from becoming even larger, simple codes are used to identify the physician or other health service provider, the patients' diagnoses, and the medical procedures undergone. However, in the generation of various reports, more descriptive information is needed about these parameters. This supplemental information is contained in separate data sets. To make this information available, a format library is created from these data sets which maps the codes to the pertinent information. In order to maintain consistency, the library is kept in a central location on our network and is accessible to all users. Furthermore, certain repetitive chores that are done by all the programmers are maintained in a central macro library libname statement, options statement source 3
65 Creating Numeric Formats Based on Precision, Not Magnitude John R. Gerlach numeric variable, dataset, if-then-else, macro variable, character variable, do loop, proc format source 3
66 Creating Scatterplot Matrices Using SAS/GRAPH Software Robert A. Vierkant The Pearson product-moment correlation coefficient measures the strength of the linear relationship between two variables. Correlation matrices are a good way to descriptively assess such relationships, but graphical approaches are often needed to tell the entire story. A scatterplot matrix is a graphical display of the bivariate relationships between a number of quantitative variables that is structured in a similar way as a correlation matrix. This paper presents a SAS macro that produces scatterplot matrices using SAS/GRAPH software. It is intended for all SAS users, regardless of skill level. The macro is similar to another macro previously published, but with certain enhancements correlation, macro definition, numeric variable, pearson correlation source 7
67 Data Extraction Methods in Medium and Large Databases Anthony M. Dymond Data warehouse projects involve populating databases with unique subsets of records. These record subsets are frequently extracted from much larger sets that can sometimes contain many millions of records. This paper focuses on data extractions based on lookup tables, which can be implemented using several different techniques. These techniques are reviewed, and their performance differences are examined using several test data sets and flat files. The results of this study can help guide the warehouse designer's decisions regarding sorting, indexing, and choice of an extraction method lookup, proc sql, flat file, big data, raw data, extract source 6
68 Data Mining and Decision Support for Operational Problems Solutions in the Railroad Industry Pavel Brusilovskiy,
Robert Hernandez
One of the major problems in the railroad industry is high yard elapsed time (YET)1 [1]. The following dependent variables reflect the condition of YET problem situation: freight car elapse time and probability of inbound car making its outbound train connection. There are many input variables that could influence YET such as inbound and outbound train performance, train structure, yard activities , in particular decision maker prefer- ences and yard capacity. This paper describes the data mining process to identify crucial factors for an unstructured problem, like YET reduction and usage of the identified factors in deci- sion making. Reliable crucial factors can be obtained through the combination of verification-driven and discovery-driven data mining processes. The framework of data mining tools consist of SAS/BASE, SAS/STAT, SAS/QC, SAS/GRAPH, SAS/OR, SAS/IML (treedisc macro) data mining, elapsed time, credit card source 7
69 DATA Step in Version 7: What's New? William F. Heffner file statement, set statement, character variable, input statement, put statement, dataset, rename statement, pdv, sas output, variable list, infile statement source 8
70 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 dataset, data visualization source 6
71 Data Warehouse Administration: An Urgent Need for Technology to Emerge! Jan J. M. Roording,
Steven F. M. J. van Agt
mis, management reporting source 6
72 Data Warehouse Efficiency Techniques with the SAS System Tony Brown source 10
73 Data Warehouse: How to Use SAS from Beginning to Almost Ending for Your Warehouse Akbar Golmirzaie data warehouse, ledger, raw data, dataset source 7
74 Data Warehousing and the Web Jim Davis A successful data warehouse is not solely dependent on surfacing data organized for decision support activities or controlling the processes by which the data warehouse is built. In fact, the success of the data warehouse is dependent on the ability of the end-user community to understand and gain access to the newly created information. The decision support user must be comfortable with the information that they are basing their decisions on. The user, whether based in IT or the decision support departments, must be able to have answers to the following questions readily available: How do we gain access to the decision support data? Where does it reside in our enterprise? How and where was the data derived? When was the data loaded and when is it scheduled to be refreshed? What does all this information mean? By using the SAS/WAREHOUSE Administrator to define and build the data warehouse, the enterprise gains a new and significant asset - a central metadata store raw data, data validation rules source 4
75 Deciphering the _TYPE_ Variable in MEANS and SUMMARY Output Data Sets Arthur L. Carpenter The variable _FREQ_ has been included by PROC Output data sets generated using the procedures MEANS. It counts the number of available MEANS and SUMMARY automatically contain the observations and because of missing values, may not variable _TYPE_. This variable can prove to be very be the same as the number of observations used to valuable when creating or working with subsets of the generate the statistics class variable, proc step, proc means source 3
76 Delivering Geographic Information: For Those Who Can't Read a GMAP and Won't Stop to Ask for Directions Jeanne M. Spicer Many have lost their way on the road to spatial visualization. This tutorial plots a course through the steps necessary to map US data by state, county, and other levels. The route followed is to generate the basic map with SAS/ASSIST, getting as close to your final destination as possible. Then the finishing touches are added by modifying the code ASSIST generates. Common roadblocks are discussed including: hitting potholes in getting your response data ready to map and what to do when you get pulled over by the GDEVICE squad. The paper takes a detour through other PROCS that are often used with GMAP to demonstrate combining county boundaries with GREMOVE and customizing a map with ANNOTATE data sets. Also included are side- trips though the uncharted territory of using boundary files that are not part of the MAP LIBRARY and the new MAP object in SAS/AF. The paper concludes with a pit stop to discuss whether or not to tow the whole thing over to SAS/GIS proc step, proc gmap, sample source 6
77 DEMOXRPT: Macros for Writing Exception Reports; Perform Range and Logic Checks on a Data Set; Write File of Exceptions to Edit and Use for Updates Ronald J. Fehd Data review can be viewed as a two-step process: 1. Compare: review differences between two data sets. 2. Exception Report: review data consistency with range and logic checks. A data set may be updated with a file containing sets of these three statements -- ID, assignment and closure: if ID = 1 then do; <variable name> = <value>; end; This paper reviews common problems in writing exception reports for range and logic checking. The product is a file which contains update commands in an easily editable form. Summary information is written at the end of the update file. The output file is in this form: if ID = 1 then do; error: Var_A gt 24; macro variable, proc step, character variable, numeric variable, proc freq, data review, outlier source 4
78 Developing Risk-Adjustment Models Using SAS Software: An Application in Home Health Care Ding Alonzo,
Albert Alva
Staff Builders Home Health Care (SB) developed the Staff Builders Clinical Outcomes and Resource Evaluation System (SCORES) to assist clinicians in patient care as well as satisfy state and federal requirements for data. There are over 350 data elements collected in SCORES. These incl ude demographic, social, environmental, psychological, and clinical data which are used in patient assessment and developing an individualized plan of care. The clinical data gathered from SCORES al ong with utilization data gathered from SB's billing system resides in a SQL Server Corporate data warehouse. SAS/STAT procedures such as CATMOD, NPAR1WAY, FREQ, T- TEST will be used to determine which demographic and psychosocial variables are statistically and clinically relevant in determining patient's health status, self care knowledge, and self care skill. Multiple linear, logistic and proportional hazard models are generated using the procedures REG, PHREG AND LOGISTIC sql server, proc freq, clinical data, clinical endpoint, proc step, proc sql source 4
79 Does a Data Warehouse Deliver the Goods? Glen Payne This paper focuses on the business value of a data warehouse by examining the experience of National Mutual Health Insurance. The success of the data warehouse is measured against its original objectives. The lessons learnt include how users responded to the data warehouse, the need to create a user interface that caters for distinctly different styles of usage, and the effectiveness of integrating with the users' existing software preferences. The conclusion drawn is a data warehouse does deliver the goods if it caters for users' wide-ranging needs data warehouse, health insurance, data validation rules source 3
80 Dun &Bradstreet: Using SAS Software to Solve Customer Purchasing Problems Christine C. Kelly,
Michael B. Smart
Dun & Bradstreet (D & B), the world's leading provider of business-to-business purchasing information, is helping many customers understand their purchasing practices with the use of a universal purchasing code developed by D&B: Standard Product and Services Codes (SPSC). It empowers customers to effectively identify existing and potential suppliers, as well as the products and services these suppliers provide. This knowledge is crucial to any procurement process and supplier analysis. But even the SPSC codes could not solve one fundamental problem: how to get the raw customer data from purchasing applications into the SPSC codes and deliver the information to business users easily. This paper will discuss the joint efforts of Dun & Bradstreet and SAS Institute in taking real customer data… applying Data Warehousing, Data Mining, and OLAP tools…and creating a full-function business application data mining, insurance risk score source 6
81 Dynamically Build a PROC FORMAT for Subsetting Large Datasets Warren E. Stinson This paper addresses a method to dynamically build a PROC FORMAT and utilize that format with the DATA STEP to extract the requested records. This method for subsetting the file can be used independently of changes to the master list of account numbers being constantly changed by the user. To dynamically build the PROC FORMAT, the following steps need to take place. The first DATA STEP will read the account number file and write our a SAS file. (Note: Most files used in my facility are "raw" data files.) A PROC SORT is then built to sort the records and remove duplicate account numbers. The second DATA STEP reads the sorted file and writes the file to a temporary data set in the form of a PROC FORMAT value statement. The PROC FORMAT is then called into the job stream using the %INCLUDE statement. The format is referenced further down the job stream in another DATA STEP in conjunction with a PUT statement proc format, proc step source 1
82 Effective Use and Management of Metadata Catherine A. Phipps,
Jim Davis
source 4
83 Efficient Cross Database Data Transaction Processing Between SAS Software and Oracle using SAS Annie S. Guo In an international epidemiological study of 2000 cardiac surgery patients, the data of 7000 variables are entered through a Visual Basic data entry system and stored in 57 large ORACLE tables. A SAS application is developed to convert the ORACLE tables to SAS tables, perform intensive data processing in SAS, and based upon the result of the data processing, dynamically pass ORACLE SQL Data Manipulation Language (DML) commands such as UPDATE, DELETE and INSERT to ORACLE database and modify the data in the 57 ORACLE tables. The objective is to achieve speed and efficiency in dealing with the large ORACLE database using SAS software. This paper addresses how such a SAS application is designed and implemented. It automatically converts data from ORACLE to SAS including appropriate labels and formats. The data converted are then processed in such a way that only necessary data transactions will later be passed dynamically to ORACLE proc sql, dataset, macro variable, oracle, proc compare, data wrangling, sample source 6
84 Enhanced Data Support Methodology (EDSM): Using Technology for Competitive Advantage for Managed Health Care William J. Glosenmeyer dataset, insurance claims source 7
85 Enhancements to SAS/ Warehouse Administrator Terry L. Lewis This paper describes enhancements made to SAS/WAREHOUSE Administrator software in the 1.2 release. Special attention is given to the Metadata Application Programming Interface. The Metadata API allows the Applications Programmer to create end user applications that are driven by metadata that is stored in the warehouse. Additionally, the Metadata API may be used to import third party metadata into the warehouse. Examples of API usage is explored and sample code fragments are discussed data warehouse, dataset, sample source 8
86 Enhancing SAS Output Tables with WordPerfect Hugh Geary Creating tables from SAS output may involve use of some rather detailed WordPerfect code. Once the ground has been broken by producing a few tables, future tables can often be done with only modifications. Titles can be put in large bold print, employ various font styles and be underlined. The body of the table can be enclosed in an array of vertical and horizontal lines. Shading can be used for emphasis in various elements of the array. Superscripts can be used for footnotes. In general, tables can be produced by taking the following steps. First prepare the SAS output by inserting tabs for creating columns and writing it to a text file. Next initiate a WordPerfect session and reset defaults to your specific needs. Then invoke WordPerfect menus to create the table, border, a heading with shading and shading for the array's diagonal elements. Finally record these actions into a macro. It can be edited to make changes and additions and can be replayed for similar text files sas output, txt source 5
87 Enterprise Data Management - Warehouse Integration Solutions Kimberly A. Foster Recent studies have indicated that organizations involved in the design and deployment of data warehouses over the past 3-5 years are now positioning themselves for information delivery. Gartner has reported that trends of large- percentage growth in BI budgets will continue through 1999, with an average growth rate of 30- 45%. With the shift in focus moving from data access to data analysis, it is becoming increasingly critical that data warehouses be integrated with analysis tools and business intelligence applications to provide business users with rapid ROI. This paper will discuss concepts that address the importance of integration techniques for enterprise data management. The author will also outline a case study reviewing the process of data preparation for robust analysis and visualization data governance, business intelligence source 5
88 Establishing Production and Development Environments for Base SAS Software Development Craig K. Ray A good development process is one of the surest ways to assure a successful development project. And, a good development environment is one of the most important pieces of a good development process. This is certainly true, for example, developing systems in C++ or in Visual Basic. It is just as important when developing SAS production systems. Without a well designed development environment, large projects can be very difficult to successfully complete, and once in production the system can be hard to maintain. This paper describes the features of well designed development and production environments for base SAS software projects and presents the framework for a generic development environment in SAS which would be appropriate, regardless of the application. 1.0 Introduction: While good practices are always desirable, they are not quite as vital for many routine SAS tasks, such as ad-hoc, or exploratory data analysis sample, macro variable, macro definition, dataset, macro facility source 7
89 Evaluating the Migration of a SAS Application from a VAX to a PC-based NT Network Alan T. Pasquino,
Don J. Fish
Over a period of several years, we have developed an application to handle our data entry/editing, reporting and verification as well as a variety of other data processing functions. This application was written for and ran on a Digital VAX under the VMS operating system. As the demands on the VAX grew, performance degraded. We therefore decided to investigate the possibility of converting to WINDOWS NT operating system and a PC server. We also recognized other benefits including an appearance similar to other user applications; a more user friendly interface allowing use of the mouse; and the ability to share information with other PC-based applications. We wished to consider several configurations (directory locations, remote processing) to be able to determine the best system for our application and environment. This paper will discuss the configurations we decided to investigate, the characteristics we decided to measure, the data cleaning, txt, proc step source 7
90 Examining Cointegration Among Time-Series Variables: Household Savings Pattern in the U.S. (1981-1995) Jun Zuo source 1
91 Exploiting Key Answers from Your Data Warehouse using SAS Enterprise Reporter Software Donna Torrence,
Julianne Staub Perry
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/GA3 System offers a new reporting vehicle to exploit data warehouse or enterprise-wide data all from a Windows reporting environment. The SAS/GA3 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/GA5 software offers an environment for data preparation and administration data warehouse, dataset source 7
92 Exploring Multi-Dimensional Relationships with SAS/GRAPH Software Gail F. Kirk,
Anne Horney
source 6
93 Exporting Graphics to Other Applications: Which Method Should I Use? Peter Ruzsa source 19
94 Ferreting Out Year 2000 Compliance Problems with PROC SOURCE Michael A. Raithel As the new millennium rapidly approaches, numerous organizations have intensified their efforts on Year 2000 compliance projects. Many organizations have allocated significant staff time and financial resources to ensure that they find and fix their non-Year 2000 compliant applications. Predictably, a number of vendors are taking advantage of this new focus by providing packages that help to identify problematic code. However, IS shops running SAS software under OS/390 (MVS) on mainframe servers already possess a powerful tool that can be used in Year 2000 conversion projects. PROC SOURCE is a Base SAS Software tool that can process OS/390 Partitioned Data Sets (PDS). Coupled with SAS character handling functions, PROC SOURCE can become a very powerful tool for examining PDS's for non-Year 2000 compliant constructs. This paper demonstrates how to use PROC SOURCE to process PDS's that contain source code, load modules and production Job Control Language (JCL) proc step, dataset, flat file source 6
95 Finding the Solution to Data Mining: A Map of the Features and Components of SAS Enterprise Miner Software Table of Contents John C. Brocklebank,
Mark Brown
Enterprise Miner software is the data mining solution from SAS Institute Inc. This paper discusses three main features of Enterprise Miner-the graphical user interface (GUI), the SEMMA methodology, and client/server enablement-and maps the components of the solution to those features sample, data mining, regression analysis, missing value, proc hpsplit, neural network, response variable, feature selection, data cleaning, imputation, proc freq, training set, stratified sampling, logistic distribution, logistic regression, bar chart, dataset, interval variable, seed, class variable, score code, validation set, histogram, chi-square test, random sampling, standard deviation, proc means, estimate, prior probability, sample size, proc sql, cluster analysis, proc reg, data science, proc genmod, outlier, cpu time, gain chart, median, sas output source 24
96 Further Discussion of Summarizing Impossibly Large SAS Data Sets Sheng Luo,
Xinsheng Lin
Michael Raithel presented at the Twenty Second SUGI Conference a very interesting concept of the horizontally summarizing the large data set in SAS. The concept is innovative and important at the age of data warehousing. Since both authors have been extensively involved in processing large data sets, we feel especially interested in this concept. Combining Raithel's horizontal summary algorithm with author's own experiences, this paper examines two other algorithms in SAS to further improve performance of the horizontal summarization. The paper will first review Raithel's horizontal summary algorithm. When the SUMMARY procedure fails to perform on a huge data set with many CLASS variables, his horizontal algorithm would work by sorting by and summarizing at one particular combination of the CLASS variables at a time, and doing so as many times as necessary to reach out all possible combinations of the CLASS variables class variable, proc sort, proc means, sample, cpu time, macro variable source 5
97 Generating Customized Reports Using the INPUT Statements Jiyuan Wu There are two types of situations where the INPUT statements from the DATA STEP, designed for reading raw or external data, is one of the most efficient ways for outputting customized reports. You can read data from several lines and put them on a single line, or read data from a single line and put it on several lines. The real life data examples presented in the paper illustrate how to use a few lines of INPUT statement code to generate outputs of desire input statement, txt, put statement, dataset, proc step source 3
98 Generating SAS Source Code with SAS Macros Robert W. Graebner The SAS macro language is a useful tool for developing utility applications that can be reused on different projects to perform common tasks. This paper illustrates how the SAS macro language can be used in combination with PROC CONTENTS to create a simple SAS source code generator. The program presented in this paper can significantly reduce the development time needed for common processing and reporting ta sks that involve all variables in all data sets in a SAS library. This paper is intended for experienced SAS programmers who have a basic understanding of the SAS macro language proc step, proc contents, proc report, macro variable, proc sql, macro facility, macro definition, txt, proc sort source 2
99 Getting Started with SAS/AF Frame Subclasses Thomas A. Miron One of the most useful features of SAS/AF is the ability to create subclasses of the standard object classes provided by SAS Institute. Subclassing is part of the SAS/AF object-oriented programming (OOP) implementation. This tutorial shows you why and how to create a subclass. The tutorial begins with a brief overview of some OOP terminology in the context of SAS/AF . Next, a step-by- step subclassing example is presented. The example shows how to create an Extended Input Field subclass that changes its background color when the cursor is in the field automatic variable, variable list source 9
100 Getting the User Community Involved in Education and Information Sharing Russell Newhouse Education and information sharing is not a one- way street. In order to receive effective education, and to receive necessary information, the user community needs to communicate its needs to the providers. But it doesn't need to stop there. The user community can also initiate educational efforts and become the conduit for spreading information. This paper will discuss how we got the user community involved in the education and information sharing process at Parke-Davis, some examples of user-led educational efforts, and some of the lessons that we have learned where statement, drop statement source 6
101 Graphical Presentation of a Nonparametric Regression with Bootstrapped Confidence Intervals Mark Nicolich,
Gail Jorgensen
regression analysis, sample, bootstrap, confidence interval, predictor variable source 5
102 Graphically Conquering the SF-36: A Tool for Illustrating Subscale by Group Over Time Using SAS/GRAPH Software David A. Dorr,
Mae O. Gordon
by group processing, standard deviation, macro loop, proc step source 5
103 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 dataset, sample source 8
104 Hot-Deck Imputation with SAS Arrays and Macros for Large Surveys John G. Stiller,
Donald R. Dalzell
SAS arrays and macros are used to implement a hot-deck dimensions are used in most cases. The sixth dimension is imputation routine to fill in missing survey data for all items of reserved for storing hot-deck values and imputation counts fo r a large demographic survey, the American Community Survey each cell (see Figure 1). In our system, the hot-deck has a (ACS). This paper describes the use of a DATA STEP with multi- depth of four values. Storing four donors per cell prevents dimensional arrays and macros to perform the imputation on reuse of the same donor in cases where consecutive a set of variables simultaneously. This differs from other occurrences of missing are present in the data. This is an approaches which sort the data by classing variables and use issue for us in the ACS, since our item non-response rates data steps with RETAIN statements to impute for each vary between 1-20% depending on the question, and the refore variable, one at a time imputation, class variable, missing value, proc step, macro definition source 6
105 How Not to Hate Annotate Susan J. Kenny sample, label statement, regression analysis source 7
106 How SAS Has Impacted History or A 25 Y ear A f fair with the Semicolon James E. Duarte My relationship with SAS (and the fickle semi-colon) began in 1972. I was looking for a statistical package that could handle ANOVA with unbalanced data and missing cells. I found the answer to this and more. A verbal and visual collage will show history-making events in pharmaceuticals in the early 1970's with FDA (SAS pre and post PROC GLM), in aluminum plate for aerospace and defense during the early 1980's (SAS/GRAPH ), computer design and customer satisfaction analysis (SAS/AF and SAS/FSP ). Examples will include how SAS changed the way NASA looked at the display of quality data for the space shuttle and aircraft aluminum (PROC G3D) including how aluminum plate was shown NOT at fault early in the Challenger disaster investigations. Additionally, a history of data mining for predicting student performance during the early 1970's, for revolutionizing the rolling of aluminum for beverage cans during the early 1980's and beer production in the 1990's data mining, correlation, proc step source 4
107 How to Sort Production Reports Prior to Printing Helen-Jean Talbott,
Earl R. Westerlund
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 source 5
108 How to Use SAS Software to Evaluate Screening Tests Using Predictive Values in Conjunction with ROC Curves Richard Severino Development of new screening tests is ongoing in the medical and biotechnology fields, be it for a medical condition or in an attempt to predict outcome. The screen usually involves a measurement that is then compared to a cutoff point in order to classify the test subject into one of two categories. In developing screening tools, researchers often concentrate on the sensitivity and specificity of the test, and use ROC curves to evaluate the discriminating power of the screening test often ignoring the predictive values of the test. The predictive values of the screen are equally important as they measure the accuracy of the prediction made on a subject whose true condition is unknown. By examining the predictive values, a cutoff point may be chosen such that it minimizes the false positive and false negative rates. A method for obtaining and examining these values using base SAS and SAS/STAT is presented roc curve, proc step, logistic distribution, sample, regression analysis, type ii error, type i error, logistic regression, proc gplot source 6
109 Implementing SAS Business Solutions: Experiences of a Traditional SAS Programmer Kimberly J. LeBouton With the implementation of SAS Business Solutions, SAS programmers are faced with new challenges. Rather than developing new, fully customized systems, SAS programmers are insta lling packaged applications created by SAS Institute. This paper discusses my experiences implementing IT Service Vision software for a client. Areas to be discussed: installing IT Service Vision working with the interactive interface building and maintaining a performance database generating reports and executive sas programmer, sas programming source 5
110 Improving SAS Performance by Improving I/O Throughput of SAS Work Directory Lu Xu Each SAS data set has its corresponding file in the SAS work directory. Creating or reading a SAS data set involves I/O activities in the SAS work directory. As CPU speed has increased dramatically for the past decade and multiple CPUs are available on a system, the I/O throughput of the SAS work directory could easily become a system bottleneck and a key factor in determining SAS performance. Using a HP 9000 UNIX system as an example, this paper first shows how seriously SAS performance can be affected by this I/O bottleneck. Then it discusses using different system configurations and storage hardware to improve SAS performance. It shows that SAS performance can be tripled using a fast storage device for the SAS work directory and a modified system configuration. This cpu time, dataset source 5
111 Improving the Rainbow Test: A Macro to Measure the Lack of Fit in Multiple Regression with the Use of the Bootstrap Paul W. Johnson A SAS macro for measuring the lack of fit in multiple regression with the use of the bootstrap is presented. The macro compares fitting a multiple regression model over low leverage points with a fit over the entire data. This is the Rainbow test for measuring the lack of fit in regression. The Bootstrap is used to estimate the bias and an improved estimate for lack of fit is calculated. The procedure is repeated for several different subsets of low leverage points. The final improved estimate incorporates Bayesian prior weight information for the central region of low leverage points. This macro requires base SAS and SAS/STAT software to run bootstrap, proc step, regression analysis, multiple regression, proc print, proc sort, sample source 4
112 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 step, proc format, proc means, class variable source 2
113 Individual Summaries: Bigger Needles in Smaller Haystacks Joel J. Gruenke At times an individual experimental unit may be very influential in an analysis. Finding a way to concisely display all relevant information in a visually appealing manner can be a challenge. This paper will present a method for placing SAS software output into a standard word processor document study day, medical history, sas output, adverse events source 5
114 Installation Issues with the SAS System and NetWare 4 Gerardette M. Furlow Integrating the SAS System efficiently and effectively in a networked environment is a task that the SAS Software consultant is faced with for each new release of the SAS System. There are configuration issues that must be addressed for the fileserver and the client workstations for the integration to work smoothly. This paper will focus on the network installation of the SAS System for Microsoft Windows Release 6.12. Particular emphasis will be placed on the integration of the SAS System within a Novell NetWare 4 environment oracle access, proc step source 5
115 Integrating Windows Clients and the SAS System into the Enterprise Gary Mehler There are several ways to utilize the full potential of the Version 7 SAS System on your Windows system. SAS System products for the PC provide many client/server architectures that can be used to access, update and analyze the entire spectrum of enterprise data. Aside from the SAS System itself, two other clients for accessing SAS data on Windows systems are covered: the SAS Universal ODBC Driver (tutorial included) and the SAS System Viewer excel, proc sql, dataset, sas output source 10
116 Intermediate PROC SQL Thomas J. Winn Jr. This tutorial presentation will provide a practical explanation of some advanced features of the SAS SQL Procedure, including the use of: summary functions, subqueries, complex joins, in-line views, indexes, macro variables, and the SQL Pass-Through Facility. Also included will be a proc sql, proc step, order by, create view, sql pass-through, create table, macro variable, select, group by, view, macro put, dataset source 7
117 Introduction to the Basics - Avoiding Some Pitfalls Deb Cassidy Have you sought help from an experienced user or past SUGI proceedings only to have your job stop running or give you incorrect results after you added the suggestion? For example, using keep/drop options or re-ordering your IF/THEN/ELSE statements can improve efficiency. But if they are used "incorrectly", you can have problems. To add to the confusion, statements that are "incorrect" for one program may be fine for another program. This hands-on workshop will walk you through some basic statements and options that everyone should know. It will focus on showing you the pitfalls that new users (and some experienced users) may encounter and help you to understand how to avoid them. Topics to be covered will include: - keep/drop statements and options, - IF/THEN, IF/THEN/ELSE, and SELECT statements, - sum function and sum statement, - creating new variables. Other topics will be covered in the workshop as time permits. Some of them are included in this paper proc step, proc contents, character variable, length statement, proc freq, keep statement, error message source 8
118 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 source 10
119 It's Only Temporary Janet E. Stuelpner,
Boris Krol
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 ability 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 source 2
120 Java for Competitive Advantage Chip Kelly source 8
121 Leveraging Resources to Maximize SAS and JMP Support John M. LaBore,
Janette E. Thomas
Individuals serving as the SAS representative or the SAS consultant for a client organization have to deal with a variety of tasks, including licensing, installation and upgrading of software, resolution of technical problems, training issues, and dissemination of appropriate information to various individuals and groups. To provide better support to the 2000+ users of the SAS system and/or JMP software within our organization, we found and leveraged various resources to help us accomplish these tasks. This paper provides an overview of both the in-house and external resources that we use. Resources and processes which appear to be "keys" to successful support are highlighted sas consultant, traffic data source 6
122 Macros &Matrices: Using the IML Procedure to Access Tabular Information Jamie Perrett proc sql, sas base source 3
123 Macros = Magic; Where Number of Graphics = Many; Customizing Your Graphics Code with Macros David Mintz,
Nicole G. Mintz
Macros can make rerunning SAS code almost effortless. Once a macro is set up properly, all the arguments can be changed in a single line of code. This is especially helpful when generating graphics. When applied to graphics code, macros can generate the same graphic multiple times with different titles, axis labels, input data sets, etc. just by changing these attributes in the macro statement. This paper will show you, step by step, how to create a macro for graphics use macro definition, macro facility, macro variable, keyword parameter, %macro parameters, proc gplot, proc step source 4
124 Mailing Labels in Minutes Using the SAS URL Access Method Tom Hotard source 1
125 Managing Large Financial Data with the SAS System and the WEB: The Sequel Paul J. Ratnaraj During the past decade, use of large and complex data sets has grown substantially. This usage explosion has compelled schools to experiment with better access and management methodologies for a diverse and dynamic user environment. The Web is poised to be the best medium for delivering data optimally across all platforms. However, the Web is still in its infancy both in terms of its use and the tools required to develop stable applications. The Wharton School was one of the pioneers in using SAS for information delivery in an academic environment. In 1993 we started using SAS to manage the delivery of our data. In late 1995 we started providing access to large financial data sets using SAS via the Web. This paper highlights our transition from using FORTRAN & SAS based delivery mechanisms to our current data delivery paradigm. Additionally, this paper discusses the Web and its components such as CGI scripts, HTML, and Java, and the importance of security data governance, excel source 11
126 Manipulation of Hierarchy T ables in SAS/EIS Applications Jeffrey L. Lessenberry This paper is intended to give hope to all those developers who have been told: 'It can't be done!' SAS/EIS was designed to allow non-programmers to create standard GUI screens, but what happens when the applications become nonstandard. This paper describes how one such nonstandard problem was resolved. It shows how to create and change user defined hierarchy tables through interactive screens, dynamically update the metabase hierarchy, and allow applications to use the new hierarchy. These methods will allow the users more flexibility when using hierarchy tables in data analysis dataset, work library, proc step source 6
127 MATCH-MERGIN G : 20 Some T raps and How to Avoid Them Malachy J. Foley Match-merging is a common form of combining files. Yet, it has its pitfalls. This tutorial examines more than 20 traps that can snarl even a seasoned programmer, and provides proven strategies for avoiding these traps merge statement, by group processing, sas log, if-then-else, retain, missing value, run, error message, sas programmer source 21
128 Migration of SAS from VMS to Windows NT: A Real Life Story Paul M. Gilbert,
Steven Light,
John Scott Grainger
sas programming, libname statement, work library, batch processing, sas programmer, txt source 5
129 Mining the Data Mart: A Case Study with Stock Market Data James A. Cox,
Tonya L. Etchison
This paper provides a case study illustrating how to take your data from the data warehouse through the data mining process. It focuses on data preparation techniques which are applied before the data is imported into Enterprise Miner TM software as well as those that can be applied after the data has been imported into the product. The information is presented in the form of a case study using stock market data that is followed from the data warehouse through the entire data mining process proc hpsplit, missing value, feature selection, data mart, data mining, data wrangling, response variable, validation set, dataset, data cleaning source 11
130 Monitoring a Cohort of Blood Donors and Recipients Using SAS/AF Frame Monique Bryher The Transfusion-Transmitted Virus Study (TTVS) was a National Heart Lung Blood Institute (NHLBI) sponsored investigation during the 1970s of characteristics of blood donors and recipients in four geographic areas of the United States. Its immediate dataset, proc step source 6
131 Moving Data Between SAS and FAME Stephen B. Taubman FAME (Forecasting, Analysis, and Modeling En- vironment) is a time series database product of FAME Software Corporation. This paper will de- scribe two SAS macros. The first, GETFAME, co- pies time series from a FAME database into a SAS dataset. The second macro, PUTFAME, writes SAS variables into a FAME database. The macros pass user input to a FORTRAN program which utilizes subroutines that access FAME da- tabases. These subroutines are the Host Lan- guage Interface (or HLI) routines written by FAME Software Corporation. HLI, which is an ap- plication programming interface with FAME, can be called by either FORTRAN or C programs. The FORTRAN program called by PUTFAME reads parameters passed by the SAS macro and writes data into a FAME database. The FOR- TRAN program called by GETFAME reads the parameters passed by SAS, and retrieves FAME time series. It then passes the FAME series back to SAS. PUTFAME is used when data is read from its source by SAS before it is stored as FAME data flat file, dataset, time series analysis, variable, proc freq, macro definition source 2
132 Multidimensional Data Visualization Tools Sanjay N. Matange,
James Beamon,
Cynthia L. Huffman
Huge amounts of data are piling up in Data Warehouses all over the corporate world. There are valuable trends about customers, clients, users, patients, products, etc. that are buried in the sheer volume of seemingly overwhelming data. Help is on the way! New interactive Multidimensional Data Visualization tools from SAS Institute are designed to help you extract trends and associations in your data, that are beyond the capabilities of traditional 2D tools. This presentation will outline some of the features of the Interactive Multidimensional Visualization capabilities that will be included with the Version 7 SAS/GRAPH software source 14
133 Multivariable Cox Proportional Hazard Model by SAS PHREG &Validation by Bootstrapping Using SAS Randomizers With Applications Involving Electrocardiology and Organ T ransplants Sudhanshu K. Ghoshal The paper presents statistical procedures of multivariable model building for survival analysis of patients undergoing surgery with many preoperative risk factors. In the first example we have added electrocardiologic risk factors to the traditional clinical and demographic risk factors. All analyses were performed on SAS 6.12. The procedure described here mainly concentrates on Cox's regression analysis with risk factors assumed to be constant over time. In the last section a more generalized version of Cox's proportional hazard model is presented. Some possible applications have been presented bootstrap, sample, proc phreg, hazard function, regression analysis, likelihood function, residual, stepwise selection, logistic regression, proc calis, predictor variable, data cleaning, logistic distribution, proc step, correlation source 6
134 Multivariate Analysis Using the MIXED Procedure S. Paul Wright The MIXED procedure, already widely used for fitting mixed effects and repeated measures models, is also a valuable tool for multivariate analysis. Capabilities of MIXED which are lacking in standard multivariate procedures include: (1) MIXED uses observations having incomplete responses; (2) MIXED handles non-standard (e.g., multiple design) multivariate m odels; (3) MIXED handles non-standard (e.g., non-separable) multivariate hypotheses; (4) MIXED allows for structured covariance matrices. This paper presents a series of examples, with emphasis on points (1) and (2) above, to demonstrate multivariate linear model analysis using MIXED. Topics covered include likelihood ratio tests, Wald tests, and model selection using information criteria and their corresponding R-squares. Other potential applications, such as principle component analysis, discriminant analysis, canonical correlation, and structural equation modeling will be described briefly covariance, likelihood function, proc genmod, degrees of freedom, regression analysis, multivariate analysis, predictor variable, proc mixed, feature selection, sample, response variable, proc step, missing value, repeated measures source 5
135 New Features in SAS/INSIGHT for Version 7 Marc-David Cohen,
Hong Chen,
Yang Yuan,
Fredrick Wicklin
There are significant new features in Version 7 SAS/INSIGHT. These include new statistical analyses and enhancements to the graphics. INSIGHT now supports several multivariate statistical techniques including principal component rotation analysis, canonical correlation analysis, maximum redundancy analysis, and canonical discriminant analysis, and it also supports comparison of means. There are also new robust measures of scale and tests for normality for univariate data as well as tests for differences of means across groups. New graphical enhancements include 3D surface plots, contour plots, 3D response surfaces, comparison of means circles in the box plots, and color blending of up to 5 colors. Several methods for surface fitting are provided including linear interpolation, thin-plate spline, kernel estimation, and using a parametric model source 13
136 New SAS Procedures for Analysis of Sample Survey Data Anthony B. An,
Donna L. Watts
Researchers use sample surveys to obtain informa- tion on a wide variety of issues. Many surveys are based on probability-based complex sample designs, including stratified selection, clustering, and unequal weighting. To make statistically valid inferences from the sample to the study population, researchers must analyze the data taking into account the sample de- sign. In Version 7 of the SAS System, These new procedures are being added for the analysis of data from complex sample surveys. These procedures use input describing the sample design to produce the appropriate statistical analyses. The SURVEYSELECT procedure selects probabil- ity samples using various sample designs, includ- ing stratified sampling and sampling with probability proportional to size. The SURVEYMEANS proce- dure computes descriptive statistics for sample sur- vey data, including means, totals, and their standard errors sample, proc step, regression analysis, proc surveymeans, proc surveyreg, sample size, degrees of freedom, sample weight, random sampling, confidence interval, response variable, proc surveyselect, proc genmod, standard deviation, covariance, output delivery system, proc glm, cluster sampling source 11
137 New V7 Client/Server Capabilities to Solve and Secure Your Distributed Processing Needs Cheryl A. Garner sas output, output, macro variable, dataset, proc step, data step source 10
138 Nonlinear Mixed Effects Models, a Tool for Analyzing Repeated Measurements: A Brief Tutorial Using SAS Software Peter P. Gaccione,
M.S. Blanchard
The exponential increase in computing power has led analysts to consider statistical techniques which until recently were not even conceived of. One area of exciting work is the use of nonlinear models to explain biologically derived data, particularly with the inclusion of random, individual effects. Programs for analyzing nonlinear mixed effects models are now becoming more prevalent and available to the general user, and for more general uses. This paper will outline this methodology, and describe an application using SAS Institute's latest contribution to the field, the NLINMIX macro proc step, proc mixed, proc nlin, covariance, predictor variable, response variable, regression analysis source 6
139 ODS for Data Analysis: Output As-You-Like-It in Version 7 Christopher R. Olinger,
Randall D. Tobias
anova, output delivery system source
140 ODS: The DATA Step Knows William F. Heffner put statement, output delivery system, file statement, data step, dataset, proc template, proc step source 9
141 On Data Transfer Aileen L. Yam In clinical research organization, there are frequently requests from pharmaceutical companies for data transfer, where raw data are to be labeled, stored in different lengths or formats, reordered according to the order of variables in case report form, transposed, combined with other data, and finally output into SAS data sets or ASCII files. This paper presents tips on preparing data for transfer. The tips include a guide to thorough planning, the use of SAS commands and macro facility to reduce the amount of work needed for some common tasks, examples to resolve general and unusual data situations, and precaution on error-prone programming codes. In light of the popularity of the Windows environment, the tips also contain some easy ways to convert Microsoft EXCEL files to SAS data sets and vice versa proc step, excel, dataset, proc sql, attrib statement, macro variable, missing value, error message, character variable, macro loop, numeric variable, variable, macro definition, proc copy, proc freq, create table, macro conditional, format statement, proc sort, data cleaning, adverse events source 10
142 One Bar Chart, Two Variables, Three Axes Anne Horney,
Gail F. Kirk
source 5
143 Open the Information Window of Your SAS Data Warehouse: A WebB Information Center Powered by SAS Di Meng source 4
144 Optimizing SAS Access to an Oracle Database in a Large Data Warehouse Clare Somerville,
Clive Cooper
SAS/ACCESS to Oracle provides facilities to treat an Oracle database as if it's a series of SAS data sets. Experience in a data warehouse environment has shown that there are a number of issues that need to be addressed to maximize some of the options available for performance improvement to update and query access. One of the major components of the New Zealand Department of Social Welfare's data warehouse is the replication of an 80 gigabyte database from Unisys DMS II into Oracle on a UNIX platform. Analysts use SAS on this warehouse for query access. But it has also been used to create the Oracle database, and to maintain the database replica in step with the Unisys system. Because of the extensive quantities of data that are being dealt with here, it has been necessary to undertake some testing in order to optimize the SAS access to Oracle. This paper presents some of the findings from this work proc sql, proc step, oracle, where statement, dataset, cpu time, proc append, proc means, sql pass-through, if-then-else, keep statement, insert, proc freq, elapsed time, data step, modify statement, set statement, select source 10
145 Overall Part Number Item Rank Rank proc step, dataset, options statement, missing value, confidence interval, sas log, proc calis, merge statement, where statement, likelihood function, sas base, proc mixed, estimate, time, time., libname statement, proc report, excel, regression analysis, proc sql, proc freq source 19
146 Overview of Java Components and Applets in SAS/IntrNet Software Barbara Walters,
Donald R. Chapman
This paper describes the Java components and the sample applets that are part of SAS/INTRNET software. This paper describes how to use the SAS/SHARE*NET driver for JDBC, JConnect, and JTunnel to access information and services available from SAS servers, and also provides code examples to demonstrate these capabilities. Note that the code examples referenced in the text are presented in a separate section at the end of the paper proc sql, bootstrap, proc step, update statement, select source 7
147 Preparing SAS Software Applications for the Year 2000 Sunil Kumar Gupta,
Kirk Paul Lafler,
Charles E. Shipp
source 6
148 PROC FACTOROR: A Tool for Extracting Hidden Gems from a Mountain of variables Jose A. Santos,
Lawrence Lippke,
Paul E. Pope
Factor analysis is a data-reduction statistical technique used to probe underlying interrelationships in Likert-type variables. SAS provides an excellent tool, in the form of PROC FACTOR, for unraveling insights contained in subjective or perceptive survey responses. The procedure reduces the number of original variables into a few common components capable of accounting for most of the variability in the data set. Using a data set from a national agricultural and food policy preference survey, this paper will demonstrate, step-by-step, how to do exploratory factor analysis including the use of the most popular PROC FACTOR options (METHOD=, proc factor, factor analysis, proc step, correlation, scree plot, sample, data science source 8
149 PROC TABULATE using a Categorical and Numerical Variable Julie Wildman-Pepe Variables are usually categorical or numerical, yet in this example, a variable is both. Likert scale data from faculty evaluation surveys is recorded for each student in every class at our university. PROC TABULATE is used to produce a report that includes: /c110/c32class identification information /c110/c32enrollment data for each class /c110/c32percent of students responding per class /c110/c32percent of students responding in each category (1 to 5) based on a Likert scale /c110/c32calculation of means based on a 1 to 5 scale The Likert scale values must be used as categorical and numeric in order to compute the required information. The response variable is duplicated (with a new name) ,then defined as categorical on the CLASS statement and as numeric on the VAR statement proc tabulate, proc step source 6
150 PROC TABULATE: A Tool for Evaluating Performance Lisa P. Wayte dataset, sample, proc step, proc tabulate source 6
151 PROC UNIVARIATE and PROC TABULATE - A Powerful Duo to Produce Descriptive Tables Including Non-parametric Estimates Barbara G. Schneider Comprehensive tables including non-parametric estimates (e.g. median quantiles, interquartile range) are of major concern in descriptive analyses. PROC UNIVARIATE within the SAS System is an excellent tool for computing various parametric and non- parametric estimates resulting in extensive output listings. In addition attractive compehensive overview tables of some of these estimates are very helpful. PROC TABULATE allowes overview tables in various styles but unfortunately does not support non-parametric estimates. In this presentation a SAS macro is suggested combining these two PROCs to produce the desired tables proc step, macro variable, proc univariate, proc tabulate, proc freq source 4
152 Producing Structured Clinical Trial Reports Using SAS: A Company Solution Andrew Lawton,
Helen Dewberry,
Michael Pearce
catalog entry, clinical trial, proc step, where statement, sas output, dataset, macro variable source 6
153 Programming and Other Features of the JMP Calculator Daniel J. Obermiller Many new users to JMP are sometimes confused by the JMP calculator. With all of the different functions available and various ways of building a formula, it is easy to be overwhelmed. However, the confusing aspects of the calculator also give JMP extra flexibility that one may not see at first glance. One example of this is that you can often build statistical tests that are not normally available within JMP. This paper briefly reviews some of the more esoteric JMP functions and how they may be used as well as ways of doing some simple "programming" with the JMP calculator sample, sample size, significance level, outlier, standard deviation source 8
154 Programming for Job Security Revisited: Even More Tips and Techniques to Maximize Your Indispensability Arthur L. Carpenter,
Tony Payne
A great deal has been said about programming techniques for efficiency and maintainability of SAS programs. We are taught to write code that minimizes machine and programmer resources. Unfortunately, easily maintained code requires fewer programmers, and fewer programmers means pink slips and less job security. In these troubled times, programmers need to be able to maximize their indispensability. Programmers can increase their job security and thereby protect themselves and their families by applying the tips and techniques discussed within this paper. The programmer will be advised when to apply the techniques, and whether the use of the techniques should be subtle or gross. Techniques will cover programming style, editing style, statements to use and avoid, and naming conventions. You will learn to blur data steps, make non-assigning assignment statements, and in general write code that not even you will be able to figure out how or why it works job security, proc step, options statement, drop statement, proc sql, set statement, by group processing, proc sort, macro variable, macro quoting function source 9
155 Proving it Works: Using PROC COMPARE to Verify an Analysis Converted into SAS Software Lauren E. Haworth,
Njeri Karanja
When SAS Software is used to replace legacy software systems, programmers are often asked to recreate analy- ses run on the old system. The challenge for the pro- grammer is to make the results from the new system match the results from the old system, so analyses will be comparable over time. This paper explores the use of PROC COMPARE to prove that a new analysis system written in SAS produces proc compare, proc step, proc freq, data cleaning source 6
156 Publish Paper Manuals No More!: An Introduction to Creating HTML Documentation Michael L. Davis,
Charles S. Patridge
So are you still printing paper documentation for your SAS applications while everyone else is surfing the web? Well you don't need to know how to brew a JAVA application to publish user manuals that can be read using any common web browser. Further, HTML (Hyper Text Mark-up Language) allows authors to easily incorporate color pictures of application screens, something that can be costly when documentation is delivered via print. Last, HTML allows authors to create manuals that allow readers to jump to the relevant section at the click of a mouse button data step, proc printto source 9
157 Purge Those MERGE Problems: Realistic Solutions for Accurate and More Complete Matching of Inexact Data Fields that Occur in the Everyday World Judy Palermo This paper describes techniques for match- merging two datasets on common character and numeric data fields used in marketing, health and other application areas- person's name and date of birth. These common data fields are commonly imprecise, as well, with errors or variations in reporting making typical linking by exact agreement insufficient . Studies typically need a very high percentage of successful matches to eliminate possibility of bias etc. Using efficient steps and techniques combining the INDEX , COMPRESS, TRIM , UPCASE, SUM functions and the Soundex Algorithm, many valid matches can be captured that previously could only be made with an individual's exhausting visual inspection proc step, proc sql, create table, full join, proc print, insurance claims, index source 6
158 Pushing SAS/AF and FRAME Entries in MVS to the Limit: The USEPA's AIRS Graphics System Thomas E. Link,
Art Alexander
format statement, proc gmap source 9
159 Querying the Data Warehouse with the SQL Procedure SELECT Statement Kirk Paul Lafler To appreciate the wealth of information a data warehouse has to offer, you need to understand how to communicate with it. Information is typically accessed using an SQL query. The statement responsible for querying the many tables and returning the requested results in a data warehouse environment is the SELECT statement. It is an indispensable piece of the data retrieval process. This paper looks at the structure of the typical data warehouse, the types of information stored in it, and how users access and retrieve data from it data warehouse, proc sql, select, group by, index source 5
160 Rapid Application Development of a Decision Support System Using Object Oriented Programming Amy Roehrig Constantly changing business needs require flexible, easily modifiable Decision Support Systems (DSS). An added level of complexity is introduced by changes to the underlying data location, structure, meaning, or scale. Object Oriented design techniques provide us with a mechanism for crafting DSS which are scalable as well as easily modified. Utilizing specific design patterns, we can provide a system that will work with changing data structures and meanings, and the growth of business logic. This paper presents an Object Oriented design data integrity, scenario analysis source 6
161 Recent Enhancements and New Directions in SAS/STAT Software, Part I: Updates Maura E. Stokes,
Robert N. Rodriguez
Version 7 of the SAS System brings major enhancements to the statistical software. All output is now handled by the Output Delivery System, which gives the user control over the printing of the results, allows all tables and statistics to be output to SAS data sets, and produces web-browsable HTML output. New procedures provide tools for partial least squares analysis and spatial prediction. The GENMOD procedure now provides LSMEANS and ESTIMATE state- ments, and its GEE facility provides the alternating logistic regression algorithm, produces Wald and score tests for model effects, and handles the ordinal response case. Ad- ditional exact tests have been added to several procedures, and even the TTEST procedure has been updated. In addition to procedures for survey design and analysis, Version 7 also introduces experimental procedures for non- parametric density estimation and nonparametric regres- sion, as discussed in Part II of this paper source 10
162 Regression with Time Series Errors David A. Dickey source 9
163 Reliably Assessing Reliability with SAS Software Pippa M. Simpson,
Prudence R. Phillips,
Shelly Lensing,
Robert M. Hamer
correlation, pearson correlation, intraclass correlation source 5
164 Reporting Results of Multiple Logistic Regression Models Depending on the A vailability of Data Richard M. Mitchell This paper discusses a process of developing multiple logistic regression models based on the availability of data, as well as the presentation of corresponding results. The process was developed for an individual patient data meta-analysis (IPD-MA) because the author's team was faced with the problem of creating a standard, uniform model that would push all available covariates through SAS/STAT software's PROC LOGISTIC allowing results to be compared among 17 international studies with similar information. Studies did not necessarily collect the same set of variables nor use identical definitions, and data that were collected sometimes included high percentages of missing values. Since PROC LOGISTIC requires uniform coding and does not accommodate missing data, a program was needed to enhance the process of input to and output from the PROC LOGISTIC procedure proc logistic, proc step, logistic distribution, regression analysis, missing value, odds ratio, confidence interval, logistic regression, proc freq, proc report, macro variable, estimate source 5
165 Resampling with PROC MULTTEST: Providing Tools for Cardiac Surgeons to Identify Clinical Practice Improvement Opportunities Gregory L. Pearce,
Peter H. Westfall
correlation, proc step source 8
166 Retrievals from DB2 BLOB (Binary Large Objects) Data Warehouse Using SAS Tracy L. Lord,
Robert C. Pratt
This paper describes a method of retrieving data from a DB2 BLOB (Binary Large Object) data warehouse using SAS as the data analysis tool. Our current Data Warehouse architecture involves storing summary data in traditional DB2 relational databases and storing raw chip data in a DB2 BLOB data type. With this BLOB data type many opportunities have opened up for our team to experiment with various methods of retrieving data. This paper details the choices we made and the technical reasons why proc sql, relational database, structured data, dataset source 5
167 Robust Standard Error Estimate for Cluster Sampling Data: A SAS/IML Macro Procedure for Logistic Regression with Huberization Honghu Liu Data sets with cluster structure are very common in practical business and research, one has to take into account the intra-cluster correlation in data analysis. This paper systematically discusses the Huber/White standard error estimate for cluster sampling data in logistic regression, and presents a user-friendly proc calis, logistic distribution, odds ratio, confidence interval, response variable, predictor variable, logistic regression, regression analysis, cluster sampling, correlation, sample, macro variable, estimate, macro definition source 6
168 SAS and HTML - HTML Publishing Using SAS Caroline C. Bahler,
Sally M. Muller,
David Doolittle,
Arturo Barrios
The current version of HTML allows the developer to have multiple frames on one web page, clickable table cells and graphics (such as maps), and different types of selection boxes. The question is how can a SAS user expand their HTML universe and utilize these portions of HTML functionality? The answer is to learn some HTML and utilize the data _NULL_ step to publish! The proc step, data cleaning source 9
169 SAS and Webb Publishing - W isdom for the Webb Challenged Sally M. Muller,
Caroline C. Bahler,
Dave Doolittle,
Arturo Barrios
If you've attended a SUGI conference or visited the SAS Institute Web site during the last several years, you know that the use of the SAS World-Wide Web publishing tools has exploded in popularity. This hands-on class is meant for the people who feel "web challenged" and who have NO or VERY LITTLE knowledge of either HTML or the SAS Web publishing tools. By the end of the class every participant will have a working knowledge of HTML and the SAS Web publishing tools and feel comfortable enough to write their own Web page using these tools dataset, proc step source 9
170 SAS Macro to Determine Rates of Change in Markers of HIV-1 Disease Progression Baibai Chen,
Cynthia A. Kleeberger
Two markers to measure the degree of progression of human immuno- deficiency virus type 1 (HIV-1), namely, the level of plasma viremia and the number of CD4 lymphocytes, have + been developed. Both the level and the slope of these markers play an important role in characterizing disease progression and in identifying study participants for future research. In addition, changes in markers (or "viral load") have been key in establishing the efficacy of highly active antiretroviral therapies (HAART). This article presents a simple SAS macro to compute the slopes using a longitudinal data set. The code consists of a DATA STEP, SAS functions, PROC FREQ and/or REG, and macro programming. The macro can be used to compute a slope from a single patient, multiple patients or an entire cohort from an epidemiological study longitudinal data, proc step, macro definition source 5
171 SAS Macros Variables and Simple Macro Programs Steven J. First source
172 SAS Macros Variables and Simple Macro Programs Steven J. First The SAS programming language has a rich "tool-box" of features that can offer a lot of power to the user. The abilit y to use macro variables and macro code is difficult to learn without some training and examples that are easy to understand. This tutorial will introduce the user to a few of the very powerful techniques possible using macro variables and macro programming macro variable, proc step, proc print, macro put, dataset, macro facility, macro definition, proc contents, put statement, macro loop, sas programming, data step source 10
173 SAS Program Efficiency for Beginners Bruce F. Gilsen dataset, where statement, if-then-else, subsetting if, proc step, input statement, character variable, conditional do loop, proc append, set statement, numeric variable, put statement, flat file, sas function, missing value source 9
174 SAS Risk Analysis Environment Sam Harris Derivative securities offer hedging or insurance opportunities for businesses as ways to mitigate financial risks. These instruments also offer investment opportunities for the risk taker. The uses of derivatives for both hedging and trading on one's own account provide institutions the opportunity to control the volatility of their financial results. This paper discusses the financial risks associated with the use of derivatives and how these risks can be measured using SAS software so that investors can make informed decisions interest rate, sas risk engine, sas risk, correlation source 10
175 SAS Software and Java for Interactive Graphics Andrew A. Norton regression analysis, conditional do loop source 7
176 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 create a SAS graphic viewer system for review and manage of data outputs and 3-D animated 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, Illustratin g 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, proc sgplot source 4
177 SAS System Tools for Design and Analysis of Experiments Donna O. Fulenwider,
Randall D. Tobias,
Robert N. Rodriguez
SAS software provides a comprehensive set of tools for the design and analysis of experiments. Procedures such as FACTEX, OPTEX, GLM, RSREG, and NLP provide statisticians with powerful algorithms for construction, analysis, and optimization of experimental designs. The new ADX Interface provides a solution for engineers and researchers who prefer a point-and-click interface for harnessing the power of SAS Software for standard experimental designs. This paper presents the highlights of a two-hour SUGI workshop on the features of the experimental design solution provided by the new ADX Interface. It highlights the interactive graphical and modeling capabilities of the Interface as well as recently developed features for process optimization. Experimental Design An increasing number of engineers, researchers, and scientists are using designed experimentation to discover and exploit cause-and-effect relationships between important factors proc genmod source 11
178 SAS/AF FRAME Entries: A Hands-on Introduction Vincent L. Timbers Frame entries in SAS/AF use graphic display devices that menu, which includes the applic ation title and three enable application developers to easily build interfaces icons. Selecting the first two icons will branch the which permit users to point and click their way through application to a report frame from which information for applications. The functionality of frame entries allow the report is collected and the report is submitted for end-users with limited computer experience to easily processing. The third icon exits the application. perform activities such as data entry, data processing, and data analysis/reporting. The second frame entry is used for producing both This paper briefly explains frame entry concepts and box and one text entry object. One button displays a list demonstrates the steps used in building a sample box from which the level of enrollment is selected to reporting application with frame entries. subset the data for the report. The other four push buttons 1 sample, sas output source 7
179 SAS/IntrNet Software: A Road Map Donald J. Henderson Web Publishing, CGI, Java, ActiveX, JavaScript, Dynamic HTML, Web Publishing, Compute Services, Data Services, Report Distribution, Application Distribution, Application Dispatcher, htmSQL, JConnect . . . .are all terms used to describe the types of processing and the tools used to define and quantify Web applications. Each of these terms will be described in the context of what problems they address and how they address those problems. Next, criteria will be discussed that attendees can use to determine when a particular technology is most appropriate. SAS/INTRNET software provides capabilities in all of these areas. A road map that explains how each of the components of SAS/INTRNET software will be presented so that users can determine which of the technologies is most appropriate for their application. NOTE: The World Wide Web has had a tremendous impact on the time involved in delivering new software technology proc sql, sample, sas base, dataset source 10
180 SAS/IntrNet Software: JConnect and Jtunnel Dance with SAS/CONNECT Software Faith Reneé Sloan source
181 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 source 10
182 Secret Menu T ricks: Using Lists to Manipulate Objects James Glidden source 5
183 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' '0131' '0133' '0134' '0136' '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 source 2
184 Skaff and Jeff A. Sloan Design and Analysis of Equivalence Clinical T rials V ia the SAS System Pamela J. Atherton An equivalence clinical trial typically is conducted to demonstrate that there is no clinically significant difference between a standard and an experimental treatment. The study is designed with the desired outcome being equivalence in efficacy, while immediate toxicity, long-term adverse effects or costs may demonstrate to be advantageous for the experimental treatment. For such experiments the usual hypothesis testing framework, which tests the null hypothesis of no difference in efficacy, is inappropriate. Instead, one tests for the presence a specified difference between the efficacy of the two treatments to be no more than some value delta, d. While the theory underlying equivalence trials has been developed and applied in clinical environments (Blackwelder, 1997), dedicated statistical software is lacking. In this paper, we summarize the statistical methodology and present a series of SAS macros for equivalence trials sample size, sample, confidence interval, null hypothesis, binomial distribution, significance level, macro call, type ii error, alternative hypothesis, hypothesis testing, relative risk, clinical significance, hazard function source 7
185 Smart Color for Powerful V isual Communication in Your Applications LeRoy Bessler source 2
186 So Now You're Using PROC REPORT . Is It Pretty? Daphne E. Ewing,
Ray Pass
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, macro variable, footnote statement, sample, options statement, macro definition source 10
187 So You're Still Not Using PROC REPORT. Why Not? Ray Pass,
Daphne E. Ewing
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, character variable, sample, proc print, proc tabulate, proc means source 10
188 Sometimes You Get What You W ant: SAS I/O Enhancements in Version 7 Steve Beatrous,
Billy Clifford
This paper presents a high level overview of new database features added to Version 7. Some of the features presented in this overview have been top-vote getters when they appeared on the SASWare Ballot (such as long mixed-case column names and versioning). Some of the new features were added to make the SAS System more of a DBMS (such as integrity constraints). Concatenation SAS libraries and SAS catalogs may be logically combined through library and catalog concatenation. Concatenation provides a tool for establishing a search list for locating the information contained in a SAS library or catalog. Library Concatenation Concatenation allows you to reference two or more SAS libraries with a single libref. In Version 6, some platforms, such as Windows and HP-UX, supported a limited form of library concatenation. The limited support of V6 had several problems: * It allowed only one form of the concatenation syntax -all the levels were specified as quoted physical names proc step, proc print, constraint, key, foreign key, proc append, index, catalog entry, sas library, proc contents, libname statement, dataset, proc sql, options statement source 9
189 SQL Step by Step: An Advanced Tutorial For Business Users Judy Loren,
Gregory S. Barnes Nelson
Some excellent papers have been presented at SUGI and NESUG giving reasons to use SQL (Hermansen), overviews of SQL (Winn), selected features of SQL (Pass & Dickson, Peters), or behind the scene details of joins (Kent). This paper aims to solidify your understanding of the power of SQL by presenting an integrated series of examples that progress from the straightforward to the intricate. The paper will focus on coding but will pay some attention to performance issues and use of SQL via pass-thru to other databases. Scope of this Paper The purpose of this paper is to introduce advanced users of the SAS System to some of the more complicated tasks that can be accomplished using SQL. This is not intended to provide the reader with a blueprint of all the functionality fo und in SQL, but rather a focused exercise into the complexity of the language. Each of the examples is presented in order of common business questions that might have been asked source 10
190 Statistical Development Using SAS/TOOLKIT Software Scott D. Grimshaw,
Gilbert W. Fellingham
SAS/TOOLKIT provides the ability to include user-written procedures, functions, CALL routines, formats and informats into the SAS System. This paper presents a user-written SAS/IML function written in C on the UNIX platform. Sample C code is presented for a user-written SAS/IML function to compute the number of runs in a vector of zeros and ones. SAS/TOOLKIT is used to create a SAS executable module from the compiled C code. This example is demonstrated in a small SAS/IML program sample, proc mixed source 4
191 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, sample, proc format, label statement, data step, missing value, proc freq, interest rate, sample size, credit card source 7
192 Statistical Process Monitoring of Correlated Binary and Count Data Using Mixture Distributions Jose G. Ramirez,
Brenda S. Cantell,
Randall S. Collica
Statistical Process Monitoring ( SPM) is used quite extensively in semiconductor manufacturing, particularly in the areas of yield enhancement and contamination (particles) reduction. These variables are typically measured at the Integrated Circuit (IC)-level, and then summarized to the wafer and lot levels. Due to the batch nature of semiconductor processing, ICs residing in the same wafer are normally processed simultaneously. This tends to induce a positive correlation among the measurements taken at the IC level. It is known that within subgroup correlation affects the performance of control charts. In particular, it tends to induce higher than expected false alarm rates. In this paper we present 3-sigma Shewhart charts, for both yield and particle data, and CUSUM monitoring charts for yield data. These charts use mixture distributions to take into account the inherent correlation in the data; thus reducing the false alarm rate binomial distribution, correlation, standard deviation, proc step, poisson distribution, maximum likelihood estimation, likelihood function, sample source 7
193 Strategic Use of the SAS System in Banking Laurie Rose As the banking industry continues its trend of record breaking mergers and acquisitions, the systems that provide these companies with critical business information become more complex. The focus has turned from product and branch performance to understanding and predicting behaviors of individual customers. This customer centric approach has created the need for business units within the bank to look at new levels of detail in the corporate data store. In turn, Information Technology (IT) groups must respond to the demand by capturing more detailed information from operational systems and make it available in an understandable format that supports this new focus. The SAS system is used strategically throughout the banking industry for numerous applications from CPU performance in the data center to financial reporting and consolidation for executives data mining, data mart, proc hpsplit, regression analysis, data warehouse, logistic regression, neural network, credit card, logistic distribution, sample source 5
194 Strong Smart Systems: Use Software Intelligence to Build Reliable, Reusable, Extendable, and Maintainable Applications LeRoy Bessler proc step, proc print source 9
195 Successful Data Warehousing for Telecommunications Business Solutions (The Philos Method) Demetris Papaiacovou The telecommunications industry is rapidly becoming the largest user of high volume information systems. This is especially true in the United States, where telecommunications, the Internet, video and audio services all fall under the larger umbrella of the information superhighway. Our project team is adept at providing customized business solutions to telecommunications managers by creating specialized information systems to meet their individual needs. We design personalized systems that transcend the boundaries of traditional data warehousing systems by gathering and storing important data, analyzing and transforming the data, and then summarizing and reordering it in accordance with the demands of the user. This provides a dynamic and efficient front- end presentation and reporting tools that transform the users from reactive recipients of hard copy reports to competitive executives poised to make efficient, well- informed decisions data warehouse, data cleaning source 6
196 SUGI 23 Conference Leaders SUGI 23 Conference Chair Sally A. Goostrey source 3
197 Supporting the "Program-Analyze-Write-Review "Process with a Development Environment for Base SAS and the Macro Language Barry R. Cohen Pharmaceutical companies do much Base SAS and Macro Language programming in the process of analyzing their clinical trials data. This is one part in their larger process of collecting, managing, analyzing, and presenting this data. Many companies now provide considerable system support for the early part of this process (data collection and management) and for the later part (document publishing and presentation of sas base, macro facility, sas output, sas programmer, clinical trial, pharmaceutical industry, data science source 6
198 T ailoring Hard Copy Publications for the Internet Tom Hotard,
Paul W. Johnson,
Tsai M. Lin
source 8
199 Tables and Views and Forms: Oh My! Marge Scerbo,
Alan C. Wilson
New in Release 6.12, the VIEWTABLE window provides a table-like interface for viewin g and editing SAS data files. This is a FRAME entr y that displays a data set in a Data Table object. Version 6.11 of the dataset, proc step, where statement source 8
200 Taking Advantage of the SAS System under Windows NT Gary Mehler Windows NT is becoming the universal desktop client operating system as well as an important file and compute server for mission critical applications. This paper presents a discussion of the state of Windows NT and how the SAS System Version 7 for Windows takes advantage and integrates with the operating system. Data access and Microsoft BackOffice integration, and hardware considerations are also presented sql server, proc sql source 10
201 Taking an HTML Snapshot of a Data Warehouse: Just Say, Cheese! Eric Simms,
Jerry Kagan
source 6
202 Taking the DrudgerYout of Data Checking: Automatic Data Validation Using FORMATS to Validate Data, PROC DATASETS to Drive the Process and MACROS to Hang It All T ogether David R. Trenery Checking data is a tedious but necessary stage before data analysis. This paper describes a utility that takes some of the drudgery out of the data checking process and enables one to be more confident about the quality of the data. You often have formats that label valid data values and are permanently associated to variables in a data set. This utility takes advantage of these formats to validate the data. I use the DATASETS procedure to drive the validation process. It provides a list of variables and their formats. Modified formats validate the data. Macros, the SQL procedure and the DATA STEP provide the tools to link the process. You supply the name of the data set you wish to check and optionally any identifying variable. Then the utility does the rest, listing observations with invalid values for those variables with an associated format. This utility has been tested and run on SAS software version 6.11 and 6.12. It should run on all operating systems proc step, missing value, proc format, data cleaning, adverse events, proc sql, macro definition source 5
203 Taking the Mystery Out of SAS Macro When Using CALL SYMPUT K. Larry Landers,
Monique Bryher
The SAS manuals and guides provide good information about using CALL SYMPUT to write data values to the macro environment, and, then, to retrieve those values in subsequent DATA steps or PROCs. Even so, it is easy to write seemingly valid code, only to find that the results are not as expected; or to use the same block of code in slightly different contexts, only to find that one works, while the other does not. Much of the confusion in such situations can be attributed to an insufficient understanding of what SAS is doing in the SYMPUT routine. Through a series of examples using CALL SYMPUT statements, we will illustrate how SAS processes macro variables and discuss the considerations for handling character, numeric and null values within or between DATA steps macro variable, call symput, input statement, sas base, missing value, numeric variable, put statement, character variable source 6
204 Ten Great Reasons to Learn SAS Software's SQL Procedure Kirk Paul Lafler The SQL Procedure has so many great features for both end-users and programmers. It's fun, easy to learn and use, and can often result in fewer and shorter lines of code than using conventional DATA and PROC STEP methods. This paper will present ten great reasons for learning the SQL procedure. Several examples will illustrate how PROC SQL can be used to retrieve data, subset and query data, order and group data, create and modify tables, perform statistical computations, produce great looking reports, construct views, join two or more tables, and exchange data between your favorite data base and the SAS System by using the SQL Pass-Through Facility proc sql, select, proc step, where statement, group by, delete, order by, sql pass-through source 6
205 Ten Steps Toward Realizing Your SAS Software W ish List (How To Present Your Technical Needs in a Business Framework) Bryan K. Beverly Have you ever come from a SAS user group conference with a wish list of products that you wanted and/or needed, only to hear your employer say 'NO'? Too often this occurs, not because the employer is unreasonable, but because of communication problems. The mindsets of managers and software technicians are different; managers are primarily concerned with business goals - programmers and system developers are primarily concerned with code and logic. Thus, the two parties tend to talk past each other and new application development opportunities are lost. This presentation provides SAS users with a ten-step approach toward achieving a solid 'hit rate' on their product wish lists. Using basic management concepts, you will learn how to couch your SAS software requests within a business-compliant framework. A worksheet detailing the ten steps will also be provided source 4
206 The 'SKIP' Statement Paul H. Grant Jr. macro definition, proc step source 7
207 The ABCs of MDDBs Marge Scerbo MDDBs (MultiDimensional Databases) are 'in' and SAS Institute is now offering 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 might 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 storage technique will be offered proc step, class variable, proc means source 6
208 The Building Blocks of PROC TABULATE Ronald Coleman proc tabulate, proc step, class variable source 6
209 The Dynamic Duo: SAS Software and Dynamic Link Libraries (DLLs) - Capable of Anything! Holly Scholz Have you ever tried to create a directory from within a SAS/AF software application? How about deleting a text file from a DATA STEP? You could use the X command or the Screen Control Language SYSTEM function to shell out to DOS, then use the appropriate DOS command. Effective, but not very elegant. The Dynamic Duo comes to the rescue! The SAS System for Microsoft Windows provides some powerful features that allow you to call Dynamic Link Libraries (DLLs) to perform just about any task that can be accomplished in a Windows environment. This paper will give you a good working knowledge of how to use the new MODULE functions and CALL routine to call DLL routines from your SAS/AF software application or DATA STEP programs. It will also provide you with several real life methods that will help get you up and running with DLLs in no time! error message, api source 5
210 The Effect of Missing Data on Sample Sizes for Repeated Measures Models Maribeth H. Johnson,
Peter P. Davis
Researchers involved with longitudinal studies are faced with the problem of trying to get study subjects to return for every follow-up visit. There is always some amount of missing data when looking at these types of studies. The MIXED procedure of the SAS enables examination of correlational structures and variability changes between repeated measurements on experimental units across time. While PROC MIXED has the capacity to handle unbalanced data when the data are missing at random, a question arises as to when the degree of sparseness jeopardizes inference. Simulation is a tool that can be used to answer these types of questions. This paper show how to simulate sets of data where an assumption of a Toeplitz structure has been made for the variance- covariance (V-C) relationship of the repeated measurements. Then observations are systematically deleted at rates of 10%, 20%, and 25% in specific patterns sample, sample size, covariance, missing value, proc mixed, proc step, likelihood function source 5
211 The Future Interface to the SAS System for PCs - A First Glance Carol Williams Rigsbee This paper describes a new user inter- face, code named "Jazz", to the SAS System. Jazz is a state-of-the-art Micro- soft Windows user interface that pro- vides a highly integrated interface with the Windows operating system, other Windows applications and the Web. Jazz provides thin-client access to all V7 SAS System platforms, including Windows, Unix and mainframes. Jazz dramatically improves the SAS System's ease of use. Transparent access to data and full ac- cess to the Output Delivery System, ODS, are also provided output delivery system, excel source 2
212 The INPUT Statement: Where It's @ Ronald P. Cody input statement, infile statement, proc print, sas log, data step, proc step, column input, trailing @, dataset, error message, missing value, numeric variable source 10
213 The Jobs and SAS Skills Used in the United States and Europe Dana Rafiee,
Helen Quinn
source 10
214 The Mediator Pattern Can Organize an Object-Oriented Application Kevin T. Brown The Mediator Pattern 1 (Gamma, Helm, Johnson, Vlissides, 1995) allows programs to organize the relationships and interactions between widgets, frames, non-visual objects and events in a controller class specifically tailored for an application. This idea can be used in any object-oriented programming language such as SAS/AF , Java or C++. This paper will discuss creating an abstract mediator class that will handle the mundane chores such as: connecting to the application framework, setting up dynamic delegation, and initializing the application as well as an object-oriented pmenu system 2 (Fuller, 1997). The subclass implementation of a concrete mediator will illustrate specific logic to 'mediate' the interactions between an application class, a frame class with several widgets, a data wrapper class as well as several other non-visual component classes numeric variable, where statement source 5
215 The Realities of Downsizing Part II: Moving a SAS Application from MVS to UNIX Tracy A. Cermack,
Kimberly J. LeBouton
Downsizing in the current business world is deemed necessary for companies to remain competitive. Companies are downsizing mainframe applications to smaller platforms in the hope of saving money and gaining productivity for both users and developers. But is this goal being achieved? This paper explores the realities of moving an entire user department (SEI), and their SAS applications, from MVS to UNIX at a major manufacturing company. It also provides an update on the more recent adventures and experiences in the implementation of this project, which was first presented at SUGI 22 1 . Key Issues This paper will discuss the following issues related to the conversion project and their impact on the project: * Moving 20 gigs of data across platforms on a weekly basis: reviewing cpu time, sas base source 8
216 The SAS Multidimensional Database Procedure Timothy J. Harrington proc step, missing value, class variable, proc means, proc sql, in= source 7
217 The SAS System Powers Web Measurement Solution at US West Robert M. Romero,
Dale Hamilton
The CP Process Analyst Team implemented a performance measurement system on U S WEST's internal web in order to meet service commitments on time and within budget. The summarized reports are used by management to review performance results, while operational data at a service order level is required to apply business rules and to produce detail reports for the engineers to run the business. Some of these measures impact team awards and performance reviews. The flexibility, speed, and large scale ability of SAS6 to access and compile report information solves numerous data merging and reporting constraints experienced in the past. This paper discusses the process flow of extracting the data from multiple ORACLE databases and legacy systems, and using some of the power and flexibility of the Base SAS Language to apply business rules, handle out-of-process issues, and then use other SAS procedures and products to produce graphical and tabular reports on the Web dataset, proc step, proc sql, data validation rules, sas base, proc format, macro variable, view, select, macro facility source 5
218 The SAS System under Windows, Version 7 Jennifer Bradshaw Clegg,
Gary Mehler
Version 7 of the SAS System for Win- dows provides support for Windows 95 and Windows NT 4.0. With this version, the SAS System continues to improve in the areas of user interface, application integration, and setup. This paper dis- cusses both new features and enhance- ments in these areas. Additionally, this paper also discusses the support pro- vided by the SAS System for Windows proc tabulate, sas base source 10
219 The SAS System under Windows, Version 7 Jennifer Bradshaw Clegg,
Gary Mehler
Version 7 of the SAS System for Win- dows provides support for Windows 95 and Windows NT 4.0. With this version, the SAS System continues to improve in the areas of user interface, application integration, and setup. This paper dis- cusses both new features and enhance- ments in these areas. Additionally, this paper also discusses the support pro- vided by the SAS System for Windows proc tabulate, sas base source 10
220 The SET Statement and Beyond: Uses and Abuses of the SET Statement JoAnn R. Matthews The SET statement is one of the most frequently used statements in the SAS System. It is also probably one of the more misused SAS statements because the SET statement typically works without much programmer input. Proper use of the SET statement is one of the key techniques to improving the efficiency of SAS programs set statement, by group processing, where statement, _eof_, dataset, numeric variable, proc step source 7
221 The T ask Output Framework: An Object Oriented Tool for Application Development John E. Ellis This paper discusses the limitations and drawbacks of some traditional approaches used when developing applications, specifically applications that automate tasks and generate output in text or graphical form. An alternative approach is laid out that utilizes object oriented principles to transcend these limitations. Also, this paper will discuss some additional functionality gained from using these techniques proc means, catalog entry source 6
222 The Tabulate Procedure: One Step Beyond the Final Chapter Stephen M. Noga,
Jeffrey M. Abolafia
proc tabulate, proc step, sample, sample size, macro variable, proc format source 6
223 Three W ays to Utilize the SAS/IntrNet Application Dispatcher Steven L. Willhoite,
John P. Campbell,
George Orr
This paper provides examples showing how we have utilized the SAS/INTRNET Applic ation Dispatcher along with the Output Formatter macro on three different types of projects. The first project selects a few parameters (macro values) from a web page, submits the request to the SAS System, and returns standardized output to the user's web browser. The second project collects survey data and stores the data in a permanent SAS d ata set using multiple dynamic HTML pages and SAS programs. The final project demonstrates a method of submitting an ad hoc query to SAS/SCL and returning the results of the query to the user's web browser. We also demonstrate a method to restrict access to these applications using the SAS System and the Applic ation Dispatcher. The programs were tested using Netscape Navigator 3.x, Microsoft Internet Explorer 4.x and SAS 6.12 for Solaris macro variable, dataset, where statement, proc sql, proc step, %if-%then-%else source 6
224 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 source 10
225 Two Application Infrastructure Tools (Automated Email and Non-Volatile Locks) Andrew B. Ratcliffe The use of SAS software as an industrial-strength application development environment continues to grow. As the size of application suites grows, the need for "infrastructure" systems occurs too. This paper describes two such systems that this author has successfully implemented in the past. Running regular overnight batch jobs (such as data warehouse loads) requires some kind of error checking. At many sites this comprises one or more staff reviewing the SAS logs each morning to look for errors and warnings. This approach is, at best, tedious and, realistically, unreliable. This paper presents a solution to the perennial problem by detailing an approach for automatically checking the log and emailing the findings to a selected group of recipients options statement, sas log source 12
226 Understanding Face Value - Giving Users What They Want... and Still Meeting Their Needs Kimberly A. Foster The purpose of this paper is to provide a general business intelligence, data mining source 6
227 Understanding Indexed Datasets and Using Direct Access Queries John Charles Gober merge statement, cpu time source
228 Understanding the SAS/MDDB Server to Process Large Files Dana Rafiee proc step, class variable source 5
229 Unlocking the SAP/R3 System using SAS/ACCESS to SAP/R3: A Practical Experience Hans Hulpiau data dictionary, data step source 4
230 Update A Two-Dimensional Matrix Using The Macro Facility Jeff F. Sun One of the most significant features of macro facility within the SAS System is its ability to make internal and dynamic updates possible. This paper will introduce a utility macro which can be used to update a two-dimentional matrix dynamically and internally. The macro code demonstrates how to use some very important macro functions and macro statements in the SAS macro language and related techniques to solve the complicated real world problems macro variable, macro definition, macro facility source 3
231 Update HTML Formatted SAS Output within Webb Browser James Sun In order to get most recent infor mation, SAS programmers are frequently asked by end users to rerun some existed programs. This paper presents a step-by-step method to setup a light-weight SAS and intranet application, allowing end users to update SAS output within their browser. The author highlights the mechanism of such applications. Techniques discussed include setting up personal web server, selecting proper CGI script, and modifying existed SAS program in order to successfully deploy the application. Three examples covered illustrate different ways to use such an approach sas output, put statement, macro variable, dataset, sas programmer source 6
232 User-Friendly Toolbox for Batch Processing within a UNIX Interactive Display Manager Session James P. Young Jr. The interactive SAS Display Manager and batch processing mode are the two main methods of running SAS programs, each of which has its advantages and disadvantages. We present a revisitation and expansion of a method of running the SAS system in a UNIX environment that combines many of the advantages of each. We created additional function keys and a customized toolbox. These features simplify adding the coding elements and issuing the commands that enable SAS programs to be edited interactively, yet submitted as quick running batch jobs. The point-and-click toolbox especially facilitates the ease of use and minimizes any learning curve. We find this tool invaluable in shortening the time required to develop and test new programs and assessing the impact of programming changes macro variable, batch job, batch processing, sas output, sas batch source 4
233 Using a SAS Macro to Create Unique Statistical Output Sean W. Mulvenon,
M. Austin
The SAS Macro facility can be very useful in procedure, are used to compute upper and lower bound developing statistical output that is not available in estimates of power in the UNIVARIATE procedure. A any of the statistical procedures. The current paper comparison between the multivariate and univariate attempts to provide an example of how the macro procedures is then completed with the conclusions facility can be employed to provide specific or unique providing guidelines, based on best and worst case statistical output that is valuable to statisticians and scenarios, for selecting between the multivariate and behavioral science researchers. A new theoretical univariate procedures sample, sample size, effect size, proc genmod, repeated measures, anova, proc univariate, correlation, proc step source 6
234 Using an Enhanced Numeric INFORMAT to Read a Combination of Character and Numeric Data Ronald P. Cody proc format, proc step source 2
235 Using Design Patterns to Implement Object-Oriented Menus in a SAS/AF Application Jack E. Fuller One of the more frustrating aspects of designing a Graphical User Interface (GUI) for SAS/AF applications lies in the basic difficulty of reconciling object-oriented programming techniques with SAS software's pmenus. Fundamental object-oriented concepts such as encapsulation and polymorphism are not built into pmenus. This paper introduces design-patterns to construct a system that brings pmenus into the realm of object-oriented programming. The key concept is that while a frame still requires a traditional pmenu for menuing, all programming interactions are now routed through a corresponding non-visual object structure which mirrors the pmenu and provides the encapsulation and polymorphism which were previously missing from pmenus source 6
236 Using Hyperlink to Organize SAS HTML Output Connie X. Li,
James Sun
Internet and intranet have quickly become important vehicles for information delivery. The versatile HTML's hyperlink is one of the reasons behind widespread popularity of web technology. In this paper, authors explain different ways to take advantage of hyperlink to organize SAS outputs. Some techniques can also be applied to organize outputs generated with new Output Delivery System sas output, sample, proc step source 5
237 Using Java to Front SAS Software: A Detailed Design for Internet Information Delivery Jonathan Stokes As the Java language evolves from its rudimentary stages into the next generation for software development, it proves to be a perfect tool for creating robust front-end interfaces to database reporting. The analysis capability of the SAS System, along with the flexibility of its programming language, makes SAS the ideal solution for server- side reporting. This paper outlines a specific design of a Java Internet reporting application using jdbc, sas base source 6
238 Using JMP Software to Get a Jump on Childhood Leukemia by Modeling Assay Data Pippa M. Simpson,
Merlin Hamre,
H. Spencer,
Y. Ravindranath
confidence interval, proc calis source 3
239 Using Macros to Produce Multiple Time Series Graphs Kimberly S. Blair time series analysis, macro variable, dataset, time series data, data step, seasonal adjustment source 5
240 Using SAS as an Automation Server in Windows Application Development Zhuan (John) Xu Automation* is a mechanism through which one Windows application can control another application programmatically. This technology is currently widely used on the Windows 95/NT platform. Since Version 6.11, SAS can act as an automation server. Currently, SAS only exposes a few properties and methods. Even so, it enables us to develop applications that are fully functional. This paper describes how to develop Windows applications using SAS as an Automation server. In addition, This paper presents Easy Interface for SAS, an application developed to simplify many routine SAS tasks, such as data set management, subsetting, sorting, importing/exporting text or Microsoft EXCEL files, common statistics, estimating sample size, random sampling, etc. Easy Interface for SAS is free and available for downloading at http://www.bigcreek.com/sas proc step, proc printto, dataset, macro definition, sample, proc means, sas output source 6
241 Using SAS for Statistical Modeling: Monte Carlo Simulations Sean W. Mulvenon,
M. Austin
The development of new statistical formulae r)ˆ /G0F degrees of freedom, and noncentrality (ab)ˆ/G0FF generally requires various mathematical derivations to ex ceeds the corresponding critical value (Muller & clearly prove the accuracy and usefulness of the new Barton, 1989). It should be noted that for the current formulae. However, an additional verification of the study only ˆ /G0F was used in the calculation of power new formulae is also becoming standard and that is estimates. Muller and Barton (1989) recommended Monte Carlo simulation. Monte Carlo simulations using the Greenhouse-Geisser estimator ˆ /G0F because the provide a procedure for comparing new formulae Huynh-Feldt estimator, ˜ /G0F, was found to consistently versus current formulae and a forum to assess their overestimate the actual power. The expected value of relative effectiveness sample, monte carlo, covariance, proc step source 6
242 Using SAS/CONNECT to Control a Distributed Application Roger Williams As Windows NT servers become more powerful and commonplace, a departmental installation of the SAS System can easily be configured to combine the flexibility and resources of the desktop (EXCEL, Word, etc.) with the power of the Windows NT server (centralized data storage, faster processor and specialized software). This paper lays out the steps required to set-up such a departmental configuration of the SAS System including SAS/CONNECT, discusses the code required to enable it, and demonstrates the implementation from within SAS Display Manager. The SAS program will execute on the local host and the remote host, launch a remote DOS application to access the SAS generated data, and then launch a local Windows application to view the macro variable, dataset, proc step, variable, data step, macro definition, %if-%then-%else, proc sql, macro function source 6
243 Using SAS/GRAPH Software to Create Graphs on the Web Himesh Patel 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 print, numeric variable, proc gchart, output delivery system, if-then-else, proc sort source 10
244 Using SAS/IntrNet and the WWW to Develop an Executive Information System-University Application Michelle L. Smith With the development of SAS/INTRNET, the World Wide Web (WWW) is becoming a tool for information retrieval and data dissemination. Graphs, charts, and downloadable spreadsheets are available from a user-friendly HTML form. At the College of Charleston, a need for a usable Executive Information System has been in existence since SAS/EIS was first demonstrated, but with limited users familiar with SAS and SAS code, an easier interface was requested. With the new capabilities of SAS/INTRNET, SAS programmers can now use their programs to report information via the web and users can follow an easier request method. To take this one step further, the author has also developed a user and password authentication to ensure security to on- campus users through the existing VAX system, and to also allow information retrieval from VAX data files. This was developed using SAS/CONNECT scripts and requires SAS/CONNECT for VAX/VMS and SAS/CONNECT for SAS 6.12 proc step, dataset source 7
245 Using the Data Warehouse Model to Streamline and Accelerate New Drug and Medical Device Development Martin J. Rosenberg Many companies that developed their own clinical data management systems in the 80's and early 90's settled on a model that enters and stores data in an On Line Transaction Processing (OLTP) oriented Relational Data Base Management System (RDBMS) and then moves that data to the SAS System for analysis. This choice was made for a number of reasons: many information technology (IT) professionals did not consider SAS software to be a true relational database; companies selected their clinical data management systems at a time when the SAS system lacked certain relevant features found in traditional RDBMS systems; MIS departments involved in the selection of a database tended to chose the tools with which they were already familiar. The original purpose of an RDBMS was to manage a company's operational data in the form of individual transactions clinical data, clinical data management, data governance, clinical trial, relational database, clinical research, data science, data review source 5
246 Version 7 Enhancements to SAS/ACCESS Software Vino Gona,
Jana Van Wyk
With the Version 7 release of the SAS System, SAS/ACCESS software provides many important enhancements that allow SAS users to transparently integrate their Database Management Systems (DBMS) with their SAS business solutions. New in Version 7, dynamic DBMS engines enable the SAS user to assign a SAS library that dynamically connects to the DBMS data server. SAS programs using the library can then directly list, read, update, delete and create DBMS tables. The creation of static access and view descriptors is no longer required. Dynamic engines are available in the Version 7 SAS/ACCESS interfaces for DB2 proc sql, sas library, libname statement, sql pass-through, dataset, data step, where statement, macro variable, db2 access, proc print, proc step, dictionary tables, error message, variable, character variable, proc contents, sas log, stored procedure source 10
247 Visually Detecting Fraudulent Doctors in the Medicaid Program Using SAS/GRAPH Software Terry D. Allen,
Glen Buckner
Each year in the United States millions of taxpayer dollars are stolen from the Medicaid program by dishonest physicians, pharmacists, nursing home and hospital administrators, and other providers of medical services and supplies. It has been estimated that more money is stolen from the Medicaid and Medicare programs than in all street crime combined. Fraud occurs in all states and in all areas of Medicaid services. The purpose of this paper is demonstrate the usefulness of SAS/GRAPH software by describing several examples where graphics were used successfully to detect fraud in the Utah Medicaid program cluster analysis, proc sgplot source 6
248 W-O-W : Data Warehouse, SAS/OR and the Web Art Rerecich Although our operational systems are very adept at processing transactions they don't lend themselves to ad-hoc reportage or analysis. Operational and senior management need distilled information from these systems for effective decision making. We were tasked to deploy a Decision Support System for executive level program surveillance and On-Line Analytical Processing (OLAP). We designed a Data Warehouse with the SAS system, running in a Client/Server configuration (UNIX & Windows 95), SAS/OR, with output distributed across the World Wide Web (WWW), to accomplish this task excel, normalization source 8
249 What We Really Need is a %By Statement Ray Pass proc step, macro variable source 2
250 Working Toward a Paperless Office Web Migration of SAS Reports Arline Loh,
Sheila Hobeck
Decision support information is crucial in the banking environment. The following article focuses on the latest development toward a paperless office for the conservative banking industry. Utilizing SAS software and Intranet technology, paper reports are now converted to electronic formats for easy access and delivery. Intranets provide both rapid report delivery and the ability to seamlessly convert live reports into spreadsheets for further analysis. The SAS web macros provide the means to construct standardized reports, while maintaining control over the information being delivered and centralizing the data. SAS software integrated with an Intranet renders an efficient means of data delivery. The first step of web migration is to move paper- based, SAS generated reports onto an Intranet site. Using the SAS web publishing macros, various techniques for formatting, and web integration, reports are seamlessly constructed for data delivery over the Internet or an Intranet dataset, macro loop, excel, proc print, macro facility, %if-%then-%else source 9
251 Working with SAS Date and Time Functions Andrew H. Karp sysdate9, datetime variable, date variable, datepart, time variable, numeric variable, dataset, raw data, proc freq, proc step, mdy, if-then-else, datetime, subsetting if, options statement, time series analysis source 7

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.