SESUG 2002 Papers - Index
88 papers. Source: SESUG (SouthEast SAS Users Group) conference proceedings.
| # | Title× | Authors× | Abstract× | Keywords× | Extras | Pages |
|---|---|---|---|---|---|---|
| 1 | (Web) Software Development: Best Practices for Developing Enterprise Applications | Gregory S. Barnes Nelson | proc sql, macro variable | source | 8 | |
| 2 | A GUI System for the Generation of Clinical Trial Randomization Plans for Collaborative Multi-institutional Clinical Trials | Sijian Zhang, Mark Carpenter, John W. Gnann |
An important responsibility for a biostatistician supporting large collaborative multi-institutional c linical trials is to develop and maintain randomization according to protocol. The Central Unit of the Collaborative Antiviral Study Group (CASG), located at UAB, oversees many long-term antiviral pediatric and adult clinical trials most of which are long-term trials lasting 5 or more y ears. Accordingly, the Biostatistics Un it of the CASG provides the statistical services using sever al biostatisticians, as w ell as, data base managers and SAS programmers. A uniform approach in a user-friendly environment is m andatory in such situations, particularly since during the length of an on-going trial, staff turnover is highly probable. In this paper, w e describe part of a GUI system built in a SAS/AF fram ework that incorporates PRO C PLAN to generate the initial random ization table, provide project management capabilities and maintains a patient accrual database |
randomization, clinical trial, sample | source | 3 |
| 3 | A Journeyman's Reference: The Writing for Reuse SAS Style Sheet: Tricks, Traps, Tips, and Templates from SAS-L's Macro Maven | Ronald J. Fehd | A program is a form of communication that occurs in two distinct and vastly different events: the first event is immediate: when the program is submitted to the language processor for execution; the second event takes place at a later time: when the writer or another programmer returns to read that program for maintenance. A good style sheet can facilitate program maintenance. This is especially important when simultaneously writing in two languages: SAS and its macro language. This paper discusses elements of a style sheet for SAS programmers. The intended audiences are intermediate SAS programmers and beginning macro programmers | macro facility, macro variable, %if-%then-%else, data step, macro definition, proc step, macro loop | source | 5 |
| 4 | A Macro for Computing a Goodness of Fit Statistic for Linear Mixed Models | Jean G. Orelien | In the SAS System, PROC MIXED offers users the possibility to perform analysis of complex data where assumptions of traditional analysis of variance (ANOVA) |
proc mixed, macro variable, proc step | source | 5 |
| 5 | A Programming Development Environment for SAS Programs | Tim P. Williams | Organizing the programming effort for large projects can be a daunting task. Progra mming teams are under pressure to complete work accurately and rapidly, while using standard templates and macros whenever possible. Add to that several levels of documentation and a manager's need for frequent status updates and you have an administrative nightmare. A system is necessary to integrate programming documentation, validation checklists, and real- time status reports. After deciding to centralize our project management spreadsheet, program header documentation, and validation documents, we found that we had the beginnings of a web-based programming development environment (PDE) for SAS programs. This paper describes a database -driven system for organizing SAS programs written using Active Server Pages, Visual Basic, and Javascript | data cleaning, 21 cfr part 11, audit trail, dataset, sas programming, validation documentation | source | 10 |
| 6 | A Sample Delivery System for A Multi-Site Study Using SAS On A UNIX Platform | Gabriel Cano | Planning a monthly sample delivery system for a multi-site study is a non-trivial undertaking. Management can be cumbersome over time if basic issues are not addressed prior to sampling. Issues of concern at the outset of the system are the computing environment, sampling design, major processes, and data management. Once data have been received there may be very few chances to make adjustments to the system. It is for this reason that the most generalized approach is best so that needed changes can be accommodated throughout the life of the system. Monthly data receipt and sample delivery makes system development challenging. This presentation will focus on methods for generalizing SAS code, large-scale data management issues, reacting to unforeseen problems in a study, and taking advantage of the UNIX Operating System | sample, macro variable, sample size, data governance, macro definition | source | 7 |
| 7 | A SAS Program for the Computation of the Crude, Stratified and Mantel-Haenszel Odds Ratio in Case-Control Study Data Analysis of Nx2xK tables | Odds Ratio | For the analysis of epidemiologic case-control studies, a SAS macro program was constructed to compute estimates of the exposure odds ratio (OR) (ratio of exposed to unexposed cases divided by the ratio of exposed to unexposed noncases) beyond the standard 2x2 table. For each exposure level compared to the referent zero exposure level, the program calculates crude ORs, stratified ORs based on all possible combinations of confounders and the Mantel-Haenszel estimator of the OR adjusted for confounding. In epidemiology confounding, defined as the mixing of the effect of another factor (the confounder) associated with both the outcome and the exposure, is a major threat to validity. The program accommodates varying number of confounders and levels for each confounder, one response variable with two levels (case/control) and one exposure with varying number of levels | macro variable, proc freq, proc step, confidence interval, response variable, macro definition, regression analysis | source | 6 |
| 8 | Adjusting Dates in a New Century | Malachy J. Foley | The Y2K scare is over, but the problem of manipulating dates correctly is still current. This paper presents SAS code that automatically adjusts the YEARCUTOFF option based on the current year. This "sliding" cut-off date means you will never have to worry about the YEARCUTOFF option again. It also insures that you can always store and manipulate the maximum range of dates | dataset, character variable | source | 2 |
| 9 | Advanced Macros | Destiny Corporation (a company) | macro variable, call symput, proc step, symbol table, proc sql, dataset, proc append, macro loop, if-then-else | source | 9 | |
| 10 | Alternatives to SAS IF-THEN/ELSE Processing | Imelda C. Go | IF-THEN/ELSE statements are simple and easy to use. However, IF-THEN/ELSE statements have their limitations. They are not always easy to read or to make changes to. They may also be less efficient than other | proc step, if-then-else, proc freq, temporary array, input statement, proc format, put statement | source | 4 |
| 11 | Analysis of Dosage-Response Data in Agricultural Research | K. Bondari | Agricultural researchers, especially research entomologists, are interested in determining how mortality rates change with increasing dose levels of a certain stimulus (e.g., pesticide, drug). A researcher may have a particular interest in determining the pesticide dose at which 50% (LD 50), 75% (LD 75), or 90% (LD 90) of insect populations respond. Several procedures have been suggested for estimating the best dosage choice for an insecticide. When the response variable is binary or measured ordinally rather than continuously, PROBIT or LOGIT analyses based on Maximum Likelihood procedure are appropriate. This report will explore the use of several dose-response models including LOGISTIC, GENMOD, PROBIT, and CATMOD procedures of SAS/STAT which can all be used for statistical modeling of the dose-response data. All these methods predict the probability of a positive response (insect death) as a function of the pesticide dosage applied |
logistic distribution, regression analysis, logistic regression, response variable, proc step, probability distribution, predictor variable, likelihood function, normal distribution, proc logistic, maximum likelihood estimation, estimate | source | 6 |
| 12 | Automated Summarization of Risk Assessment of Discrete and Continuous Exposures in Epidemiological Studies using SAS ODS | Stuart D. Long | In epidemiological research, we frequently deal with case-control studies where the researcher wishes to investigate associations between the outcome and numerous potential exposures added to a predetermined set of base model covariates. The exposures may be continuous, dichotomous, or multi-level. Our macro runs a PROC LOGISTIC model with adjustments for other predetermined base model covariates. PROC LOGISTIC statistics related to the added exposure variable are summarized, including the creation of class variables for multi-level exposures if needed. The CMH option in PROC FREQ computes risk estimates for only 2x2 tables, and not for the more general rx2 tables. Our solution for rx2 level exposure variables is to create datasets for each comparison of an exposure level against the referent exposure group. PROC FREQ is run on these individual datasets and then re-run for the entire rx2 table to obtain the estimated overall linear association |
proc step, proc freq, proc logistic, logistic distribution, macro variable, call symput, response variable, logistic regression, macro call, class variable, regression analysis, macro definition | source | 6 |
| 13 | Basic Usage of SAS/ETS Software to Forecast a Time Series | Douglas L. McAllaster | This paper is a tutorial on using SAS/ETS to forecast a times series. We explain how PROC FORECAST generates forecasts using the three main exponential smoothing methods (single, Holt's, & Winters') and the stepwise auto-regressive method. Next, we explain usage of PROC REG (or better, PROC AUTOREG) to forecast a seasonal times series u sing indicator variables. Finally, we briefly overview of the capabilities and complications of using PROC ARIMA |
proc step, proc esm, regression analysis, correlation, time series analysis, proc autoreg, trend, proc reg, proc forecast, proc arima, excel, predictor variable | source | 10 |
| 14 | Beginning Macros | Destiny Corporation (a company) | macro variable, macro facility, &variable, macro definition, proc step, macro call, proc print, symbol table, macro parameter, %macro parameters, automatic macro variable, keyword parameter, missing value, macro put, macro quoting function | source | 6 | |
| 15 | Bridging the Gap: From Spreadsheets to Websites | MaryAnne DePesquo Hope | Business needs come in all shapes and sizes and computer technology continues to improve in leaps and bounds. Combine these conditions with savvy business users and the result is new demand for on-line Internet information systems solutions. And quick! Following is an account of one such application development solution. Using SAS tools such as SAS/ACCESS to PC files, SAS Intrnet and others, the authors combined efforts to provide an Intranet based on-line look up system, web enabling data from 56 sources and giving the business user a head start on the future. We will provide a step by step look at the initial conditions, the development process and the resulting application |
proc step, excel, proc freq | source | 3 |
| 16 | Comparison of Correlated Proportions using SAS PROC GLM: a Simulation Study | Mark S. Litaker, Daron G. Ferris |
The performance of an analysis of variance (ANOVA) model to compare correlated proportions was evaluated using simulated data and SAS PROC GLM. The simulation study is based on a clinical study of three diagnostic techniques, which were evaluated for agreement with biopsy results. 145 study subjects received two independent evaluations using each of the three methods. The data consists of 1s, representing agreement with the biopsy diagnosis, and 0s, representing disagreement. Blocks in the ANOVA represent subjects. Least-squares means and 95% confidence intervals were calculated for the means of the three methods. Correlated observations were generated using observed subject means and hypothesized treatment effects as probabilities of agreement. Validity and power of the procedure were estimated using data simulated under the null and two alternative situations |
treatment effect, confidence interval | source | 4 |
| 17 | Customized Reports - Have It Your Way! | Deb Cassidy | This presentation will cover some examples to create a report just the way you need it. Two main areas will be covered. The first area will be manipulating the raw data to provide what you really need. The second area will focus on formatting the text within the report. Different | excel, proc step, by group processing, dataset, automatic variable, full join, left join, proc sql, if-then-else, proc freq | source | 10 |
| 18 | DATA permlib.dailyfile; | Heidi Markovitz | Many SAS operations set codes that describe whether the task was a success and what the operation accomplished. Capturing these codes in your programs enables you to (1) halt execution as soon as a failure occurs, (2) produce meaningful error and instructional messages, and (3) conditionally execute DATA or PROC steps depending on the outcome of earlier steps. Using them you can turn your collection of steps into a cohesive program. The Problem: SAS programs are usually composed of several discrete steps. Later steps are frequently dependent on the success of earlier steps. When an early step in a long program fails, the program may continue processing. The can lead to replacing good data with bad, inaccurate reports, and very difficult recovery processes. To illustrate, here is a simple program that may be part of a daily process. It creates a SAS data set from raw data and prints the data set. Each time the program is run, it replaces the daily data set |
automatic macro variable, macro variable, dataset, sysrc, libname statement, macro put, proc step, sas function, proc sql | source | 3 |
| 19 | Data Quality - The Fuel that Drives the Business Engine | Tony Fisher | In today's information age companies will live and die by information. This information is the fuel that drives the business engine. As more and more data is collected, the reality of a multi- channel world that includes e-commerce, direct sales, call centers and existing systems sets in. Bad data is affecting companies at an alarming rate and the dilemma is clear: how can a company ensure that it is getting the most out of every application, every system and every database to maximize the use of corporate data throughout the enterprise? In the end, the companies with the most complete, accurate and reliable information will gain and retain market share. Recognizing that you have a data quality problem is just the start. The real question is how to fix the problem. In this session you will learn how to determine if incomplete, inaccurate and unreliable data is affecting your business | data cleaning, business intelligence, data integration, data validation rules | source | 5 |
| 20 | DATA Step Essentials | Neil H. Howard | The DATA STEP is the most powerful tool in the SAS system. Understanding the internals of DATA STEP processing, what is happening and why, is crucial in mastering code an output. Concepts you should understand: ƒ what is the Logical Program Da ta Vector (LPDV or PDV), ƒ what are automatic SAS variabl es and how are they used, ƒ what is the SAS Supervisor, ƒ why it's important to underst and the internals of DATA STEP processing, ƒ what happens at program compile time, ƒ what's actually happening at execution time, ƒ how are variable attributes captured and stored. By understanding DATA STEP processing, you can debug your programs and interpret your results with confidence. This paper focuses on techniques that capitalize on the power of the DATA STEP and working with (and around) the default actions |
proc step, proc format, missing value, dataset, lookup, put statement, update statement, automatic variable, if-then-else, raw data, retain, length statement, character functions | source | 10 |
| 21 | Data Verification and Consolidation of Files with Dynamic Code Generation Using SAS Macro, Data Step Programming and System Utilities | Bill Pierce, Falls Church |
This paper describes a process th at can be used to verify and consolidate data contained in external non-SAS data sets and shows how SAS can be combined with system utilities to provide an integrated data management tool. The environment used to demonstrate the process centers around the scenario where a large number of data files, often numbe ring in the hundreds, must be checked for data errors and the data from all files consolidated into a single master SAS data set. The solution examined in this paper uses system utilities to dynamically generate a data set list which is passed as input to a SAS program and used to build the JCL and SAS statements to create a batch job stream to process the files. The core processing is accomplished by SAS Macro using code streams constructed in DATA steps. Although the specific examples are based on an IBM OS/390 mainframe environment, the concepts can easily be adapted for any platform | proc format, batch job, macro call, macro definition, proc step, dataset, proc append | source | 4 |
| 22 | Developing a Control Methodology for Customized Data Management and Processing | Mark Tabladillo | This presentation will focus on the control methodology developed to manage, validate, and process survey data. Extensive SAS/AF development experience is not required, though it will help to have had exposure to the basics of SAS/AF and SCL |
sas base, macro definition, dataset, excel, advanced sas, txt, macro variable, sample, character variable, input statement, macro facility | source | 6 |
| 23 | Don't Be a Slave to Your SAS Programs | Marje Fecht, Larry Stewart |
Do you spend a lot of time updating your programs to adjust inclusion criteria? Do your programs run forever while you patiently wait? This beginning tutorial focuses on maintenance - free, efficient coding techniques so that you can spend your work time being more productive! Topics include: ƒ macro coding techniques ƒ efficient programming tips ƒ code reduction tricks ƒ maintenance-free programming suggestions | proc step, proc sort | source | 2 |
| 24 | Enhancements to SAS/GRAPH in V9 | Himesh Patel, Ravi Devarajan |
Would you like to improve the quality of your graphs and web- based reports using client technology? How about using annotate on your client output or, generating images in batch mode from clients? These are some of the enhancements made to SAS/GRAPH in order to improve the quality of output produced by ODS and the client side device drivers. V9 SAS/GRAPH also has new and improved GUI for web based ActiveX and Java graphs. Several improvements have also been made to the existing graphics procedures, including detailed options for the pie chart, and new area bar and radar charts for our Java and ActiveX based devices |
proc step, missing value | source | 10 |
| 25 | FDR_TEST: A SAS Macro for Calculating New Methods of Error Control in Multiple Hypothesis Testing | Jeffrey D. Kromrey, Kristine Y. Hogarty |
The testing of multiple null hypotheses in a single study is a common occurrence in applied research. The problem of Type I error inflation or probability pyramiding in such contexts has been well-known for many years. General procedures for the control of Type I error rates in multiple testing are the Bonf erroni procedure and its' more recent modifications. These procedures partition a desired level of Familywise error across the set of hypotheses being tested. Recent work on multiple testing by Benjamini and Hochberg (1993, 1995, 2000) has focused on controlling the False Discovery Rate (FDR) rather than rates of Type I error. The adaptive (BH-A) and non- adaptive (BH) procedures for controlling the FDR in a set of tests promise increases in statistical power relative to other procedures | type i error, significance level, false discovery rate, null hypothesis, power analysis, benjamini-hochberg, multiplicity, type i error control, hypothesis testing, sample, anova, regression analysis | source | 6 |
| 26 | Focusing Healthcare Quality Improvement Dollars: Using SAS' for Geographic Targeting | Barbara B. Okerson, Charlotte F. Carroll |
Like many organizations, the health care quality improvement industry is charged with doing more with less. This can only be accomplished by careful scheduling of resources. Geographical differences in adherence to clinical guidelines have been demonstrated. In this paper, geographical analyses are used both to identify regions and providers for healthcare quality improvement targeting and to identify best practices in both the inpatient and outpatient settings. SAS, Output Delivery System (ODS) and SAS/GRAPH are used to generate the output. All output is created using SAS software, version 8.2 on a Windows 98 platform but are not intended to be platform specific. All SAS code is included in the paper |
proc step, box plot, bar chart, data science, ods rtf, output delivery system, proc gmap | source | 7 |
| 27 | GoodsHound - Building Multi-Functional Web-Based applications with SAS/IntrNet and JavaScript | Blake R. Sanders, Mikhail Gruzdev |
The advantages of SAS/MDDBS can be built into applications without needing the large SAS/MDDB files. The trick is to know what the user needs |
txt, output delivery system | source | 5 |
| 28 | Handheld Computers for Data Entry: A Data Services Approach using Java and XML | Scott E. Chapal | Integrating handheld data entry into a data management system can be accomplished elegantly with Java | data cleaning, libname engine | source | 7 |
| 29 | Handling Missing Data with Multiple Imputation Using PROC MI in SAS | Hossein N. Yarandi | The multiple imputation was developed as a general | imputation, multiple imputation, missing value, regression analysis, proc mi, proc calis, proc step, propensity score, logistic regression, sample, logistic distribution | source | 5 |
| 30 | Here's the Data, Here's the Report I Want - How Do I Get There? | Deborah B. Buck | SAS programmers are often given a set of data and asked to generate a specific report. This can be a daunting task, especially for a relatively new SAS user. Where to start? This process involves two separate, but related phases. Phase one concerns the data itself. What form are the data in - is it raw data, an existing SAS data set or sets, or data from another software program? Also, does the data need to be manipulated, restructured or summarized to provide the information needed for the SAS procedure? Phase two involves determining which PROC will provide the output in the desired form. Knowing whether the report needs a specific layout, customized information, or statistics is essential in deciding on the most appropriate PROC. This paper will present some guidelines to follow for producing the desired report in a logical and organized manner using Base SAS |
dataset, proc step, input statement, proc report, proc tabulate, update statement, sas base, proc format, proc print, if-then-else, flat file, proc freq, proc means, libname statement | source | 6 |
| 31 | High Energy SAS - Managing the SAS Community in a Large Corporation | James M. Alessio, Mark L. Jordan |
It is a challenge to oversee the installation, maintenance, training, and user support of any large software package in a rapidly growing organization. This paper will share the opportunities, bumps, and triumphs of administering SAS in a corporation that has seen its SAS user community grow from 50 to nearly 1,000 in just four years | credit card, logistic distribution | source | 5 |
| 32 | Integrating SAS Analytics with Microsoft-based Desktop Applications | Sam Yamamura | Many corporations today use Microsoft-based applications (e.g. Visual Basic executables, Access Data Projects, OLAP for EXCEL, .NET services) to exploit the value of warehoused enterprise information. Several enabling technologies exist to leverage the SAS system as a "compute server", adding advanced analytical components to core functionality in the Microsoft Office productivity suite. This paper compares the pros and cons of two SAS technologies, Integrated Technologies and SAS/INTRNET, as means for integrating the SAS system with Microsoft EXCEL and Access applications. Through case study, examples, and discussion, the authors will present tips and considerations for using SAS/INTRNET with EXCEL web queries, Access Data Projects, and VB executables |
proc sql, sql server, regression analysis, excel, proc step, macro variable, proc genmod, proc gplot, proc glm, imputation, odbc connection, %if-%then-%else, sas programming, macro loop, missing value, dataset, macro definition | source | 6 |
| 33 | JMP Density Ellipse Script Code Made Easy | Charles E. Shipp, Kirk Paul Lafler |
We show the use of scripts to meet two useful | correlation, predictor variable, interval variable | source | 2 |
| 34 | JMP Density Ellipses for Pharmaceutical Analysis | Charles E. Shipp, Kirk Paul Lafler |
JMP is a data discovery tool used in both (1) the exploratory phase and (2) the analysis phase, of experimental and theoretical work. The density ellipse shows the extent of data, the center of mass, the least squares fit line, and the degree of correlation between a selected dependent variable and a selected independent variable. When superimposed, the ellipses of similar variables for different classes show and contrast their sameness and differences. The example used is pharmaceutical dummy data in the area of cancer research | predictor variable, correlation, response variable | source | 5 |
| 35 | Logicals From Libraries: Using Storage as a Bridge Between Sessions | Gary E. Schlegelmilch | In converting legacy systems into SAS, or consolidating systems into an integrated whole, new techniques are often developed just to accommodate the transition. In a case where a UNIX application needed to communicate file locations from inside the Base SAS program back to the calling script file, we used the common factor - physical storage - as the common link. This allowed the parent process to retrieve values for variables that were defined in subprocesses, and normally inaccessible by the parent process. The technique uses several SAS functions, in common use in many SAS programs, to access the data from the calling process. The program then writes the library information to a UNIX script file, which can in turn be executed by the calling process to define the logicals at that level. Although this problem was solved for a UNIX platform; the technique used would lend itself to other platforms as well | data step, cpu time | source | 2 |
| 36 | MACROS: Tips, Techniques, and Examples | Andrew M. Traldi | Most SAS users are aware that SAS has a macro facility, but might be unsure of how they can use it or are fearful that macros are too difficult. Although macros can be complex, they can be very helpful in writing general-purpose SAS programs; in some instances, they are absolutely critical to an application | macro variable, macro put, proc step, macro loop, cpu time, keyword parameter, macro parameter, %macro parameters, macro definition, %if-%then-%else, if-then-else, proc print, proc sql, macro facility | source | 8 |
| 37 | Managing Multiple SAS/FSEDIT Data Entry with a SAS/AF Application for a Cohort Study | Emily A. Mixon | The University of Alabama at Birmingham, Department of Pediatrics, Division of Infectious Diseases currently follows a cohort of children diagnosed with congenital cytomegalovirus (CMV) infection. Congenital CMV infection is one of the leading causes of sensorineural hearing loss in young children. Vision, neurologic, and developmental deficits may also occur in children with congenital CMV infection. In order to determine sequelae following CMV infection, each study participant receives hearing, vision, and psychometric testing at various intervals during the followup period. Demographic information along with a maternal questionnaire and medical record abstracts are also collected for determining the possible maternal exposures for infection. SAS (ver 8) FSEDIT7 data entry screens are used for entering the information gathered into separate data sets | data cleaning, dataset | source | 4 |
| 38 | MERGING: Comparing the DATA Step with SQL | Malachy J. Foley | Which merges files better: the SAS DATA STEP or SAS SQL? Traditionally, the only way to merge files in SAS was via the SAS DATA STEP. Now SAS provides a Structured Query Language (SQL) facility which also merges files. This tutorial compares and contrasts these two merge facilities. It examines the pros and cons of each merge technique. It looks at DATA STEP code to perform specific merges and then looks at the corresponding SQL code to perform the same merges |
proc sql, inner join, create table, proc step, full join, right join, coalesce function, where statement, relational database, data merging | source | 10 |
| 39 | Meta Data + Files = Automated Status Reports | Frank C. DiIorio, George E. Demuth, Michael DeSpirito |
Let's be realistic - no one looks forward to writing status reports. Even if everything is up to date and fine, reporting this good news still requires time and effort. Couple this with the typical programmer's desire to automate every- thing in sight, and you have … %STATUS, a tool to gen- erate project status reports. This paper describes the need for and evolution of the pro- gram, and discusses the file structures, and coding tech- niques we employed. We focus on several key ingredients that make programs like %STATUS feasible, successful, and relatively easy to code. The first is meta data. Our program, and many others in the project, uses this high- level "data about data" to determine what tables and lis t- ings should be generated. Once this is known, we know what output / reports should be generated. The second key ingredient of the program, ODS -generated HTML, can then be used to communicate what has actually been pro- duced |
proc report, sample, proc step | source | 7 |
| 40 | Missing Secrets | Robin Jones, H. Ian Whitlock |
This paper will attempt to explain the secrets to setting SAS variables to missing. Categorizing SAS variables into four types provides a systematic way to unlock such secrets. The four types of variables are 1) unnamed variables, 2) automatic variables, 3) variables from SAS data sets, and 4) all other variables. The rules governing these four types of variables will be discussed. Two major points will also be emphasized; 1) SAS distinguishes between setting a value to missing at the top of the DATA STEP loop from setting a value to missing when data is not read; 2) SAS reads in a record only once. Grouping rules according to variable types provides a clearer understanding of when SAS sets variables to missing |
automatic variable, dataset, by group processing, temporary array | source | 4 |
| 41 | Mrs. Clean Tackles Dirty Data | Janet E. Stuelpner | What is clean data and how do you clean it? This is an age-old question that has some pretty easy answers. There are some techniques that can be used to find invalid data values in both numeric and character data, missing values of any type and duplicate observations. Simple procedures and DATA steps can be used to ferret out inappropriate observations. This paper will illustrate some of the techniques used after data entry is complete and the data has to be reviewed and cleansed | proc step, data cleaning, missing value, proc freq, where statement, numeric variable, proc print | source | 3 |
| 42 | Multiple Uses for a Simple SQL Procedure | Rebecca Larsen | SAS users, who manage and analyze several secondary data sets from multiple sources, must prepare their data in order to provide standardized data sets that are suitable for pulling extracts and performing various analyses. A simple SQL procedure can be very effective as a tool for handling various data management & analysis steps. The CREATE TABLE and INSERT INTO…SELECT steps within the SQL procedure can be used to insert rows from multiple tables into one table, to insert rows from multiple queries into one table, to change the order of variables in a data set and to add formats, labels and change the names of variables in a data set. SAS users of all skill levels in a variety of disciplines can use these steps to manipulate their data sets. These steps are not specific to any one SAS version or operating system. The examples provided pertain to health care claims data, but the methods can be applied to other types of data as well |
proc sql, create table, proc step, select | source | 4 |
| 43 | No More Downloading - Using SAS/ODS to Create SAS Graphs and HTML Documents for OS/390 Systems | Patricia Wingfield | With the advent of mainframe web server software, such as IBM's 'OS/390 HTTP Server', and with SAS Release 8's new ODS facility, it is now possible to create HTML documents in OS/390 data sets - PDS/E, sequential or HFS. Graphs and web pages stored in these OS/390 data sets can be viewed via a web browser. It is no longer necessary to download the documents to another type of platform for viewing on the internet or intranet. This paper covers SAS coding techniques that you should find helpful for developing HTML and SAS/GRAPH documents for storing and displaying on OS/390 systems |
proc step, ods html, proc report, sample, proc gplot | source | 7 |
| 44 | ODS (Output Delivery System) | Destiny Corporation (a company) | proc step, proc tabulate | source | 8 | |
| 45 | Output Delivery System Tips | Kirk Paul Lafler | Are you looking for ways to improve the way your output appears? The SAS Output Delivery System (ODS) can help turn tired-looking output into great looking information with a purpose. ODS introduces exciting new features for your output. Gone are the days when the only available formatting choice is basic output listings consisting of monospace fonts printed on a white background. Using built-in format engines, ODS addresses the inherent weaknesses found in traditional SAS output by enabling "quality" output to be produced without having to import it into word processors. In Version 8, many new output formatting features and options are introduced for SAS users to take advantage of. Users have a powerful and easy way to create and access formatted procedure and DATA STEP output |
proc univariate, sas output, output delivery system, ods rtf, ods html, file statement, ods pdf, proc step | source | 7 |
| 46 | Problem Solving Techniques with SQL | Kirk Paul Lafler | Solving technical problems involves the use of good techniques. Data processing problems frequently involve a great deal of data manipulation and computing resources. When confronted with problems of this nature, you could approach them using conventional DATA, and/or PROC STEP methods, or you could use the strengths of the SQL procedure to manipulate and process this data. Attendees will learn how SQL can be used to solve traditional, as well as not so traditional, problems including retrieving and subsetting data, using |
proc sql, group by, proc step, where statement, order by, create view, inner join, right join, select | source | 6 |
| 47 | PROC FORMAT in Action | Jack N. Shoemaker | The PROC FORMAT subsystem provides an efficient and compact way to store all sorts of facts and data for data-driven applications. This paper will focus on PROC FORMAT in action. That is, building user-defined formats from extant tables and using PROC FORMAT in conjunction with other SAS procedures like SUMMARY, FREQ, TABULATE, REPORT, and PRINT. Since these other SAS procedures are format-aware, judicious use of user-defined formats can save hours of coding and result in more robust, data-driven applications |
user-defined format, proc format, proc step, work library, data step, char., proc freq, proc catalog | source | 6 |
| 48 | Projecting South Florida County-Level Citrus Acreage Using Time-Series Analysis (SAS Automatic Forecasting System) and Multivariate Analysis (PROC FACTOR) | Richard A. March | The South Florida Water Management District has developed regional water supply plans for four planning areas within the South Florida area. These water supply plans are mandated by Florida Statute (Section 373.0361, Florida Statutes). One component of these plans is conducting "(a) quantification of the water supply needs for all existing and reasonably projected future uses within the planning horizon." Citrus irrigation is a major water use in South Florida; regional patterns of citrus acreage have changed substantially since the mid-1960's, with a general southward movement of citrus associated with a series of freezes in the mid-1980's. The approach taken in the Regional Water Supply Plans was to estimate citrus acreage in each county with a single equation model. This paper presents results of alternative approaches to projecting citrus acreage using the | factor analysis, proc esm | source | 5 |
| 49 | Putting It Together - The Poster A Data Set Joining Primer | Janet E. Stuelpner, Caroline C. Bahler |
The ability to combine different types of data from multiple hardware and software platforms is a major strength of the SAS system. SAS has blessed information analysts with a wealth of different options for joining data values from many different data structures. There are several factors that will determine the type of join that is needed. The source of the data and the outcome are of utmost importance. This paper will discuss the joining techniques offered within the SAS system | dataset, proc sql, proc step, inner join, flat file, by group processing | source | 4 |
| 50 | Putting It Together - The Tutorial A Data Set Joining Primer | Janet E. Stuelpner, Caroline C. Bahler |
The ability to combine different types of data from multiple hardware and software platforms is a major strength of the SAS system. SAS has blessed information analysts with a wealth of different options for joining data values from many different data structures. Therefore, an information analyst needs to determine who (parent data structures), what ("software environment"), where ("hardware environment"), how (the tools available to perform the join) and why (the required contents of the child data set) of a join in order to determine which strategy to use. This paper will discuss the joining techniques offered within the SAS system and give examples of their use | proc sql, inner join, proc step, full join | source | 9 |
| 51 | Refactoring Design Patterns into a SAS Application | Mark Tabladillo | This presentation will describe the object-oriented substructure developed to manage, validate, and process survey data. Experience with classes or objects or design patterns is not necessary for this talk, but it will help to know how to code a class and instantiate an object with SCL | sas base, macro facility | source | 8 |
| 52 | Reordering Variables in a SAS Data Set | Imelda C. Go | A programmer may have a number of reasons to want to reorder variables in a data set. One reason is to take advantage of PROC PRINT output that prints variables according to their order on the data set when the VAR statement is not used. Another reason is to logically order the variables prior to exporting the data into a spreadsheet. This would eliminate the need to reorder the columns in the spreadsheet since reordering is done prior to exporting. Whatever the reasons are, there are a number of ways to reorder the variables in a data set. The DATA STEP may be used to reorder the variables by using one of the ATTRIB, ARRAY, FORMAT, INFORMAT, LENGTH, or RETAIN statements. PROC SQL can also be used to reorder the variables |
proc step, proc sql, proc print, name range list, retain | source | 3 |
| 53 | Research Across Multiple Systems: Probabilistic Population Estimation (PPE) | Diane Haynes, Rebecca Larsen, Shabnam Mehra |
Today, social service administrators are examining client service utilization using cross system analysis, because often a client's needs require accessing government- funded services from multiple organizations. One technical problem that arises is that organizations do not share common unique identifiers from which to link one individual's information together (i.e., system #1 uses Social Security Number (SSN) and system #2 uses Personal Identification Number (PIN)). Different | confidence interval, confidence level | source | 7 |
| 54 | Running SAS Applications on the Web | Destiny Corporation (a company) | proc step, libname statement | source | 10 | |
| 55 | SAS Consultants: A Sheep in Wolf's Clothing | Gary M. McQuown | Thinking of hanging out your shingle and going it alone? Look before you leap and make sure you know both the risks as well as the rewards of being a SAS Consultant. Although employees and consultants may write identical code; their behavior, responsibilities, risks and rewards can be very different. This article will explore the fundamental differences between SAS Consultants (independent contractors or 1099's) and SAS Programmers (employees or W2's), and address the most common questions dealing with self employment and the transition process. About the Author: Gary McQuown is the owner of Data and Analytic Solutions, Inc, a SAS Alliance Partner, located in Fairfax, Virginia. He has programmed in SAS for over fifteen years, specializing in providing SAS solutions for the Financial and Social Science sectors. He serves large and small firms in the US and Europe working on critical contracts for US government agencies and fortune 500 companies | source | 7 | |
| 56 | SAS High-speed Automated Reporting Queue (SHARQ) | Eric Puhlman, Blue Cross Blue Shield |
Take a bite out of time with SHARQ - Completely automate standard reports using PC SAS 8.2. BlueCross BlueShield of Tennessee (BCBST) experienced substantial downtime when manually processing standard SAS reports. To reduce this downtime, all manual intervention was eliminated through the development of an automatic SAS reporting system called SHARQ. SHARQ extracts data from multiple sources, manipulates extracted data, and outputs final report information in multiple formats - all without manual intervention. Task scheduling, batch mode processing, and macro programs developed and/or customized as "tools" will be presented. These tools provide automated date routines for program execution, error code processing with automatic program termination and email notification to developer(s), and automated final report output in multiple formats (e.g. MS EXCEL/Word via DDE, HTML using ODS). Finally, SAS environment configuration issues that help standardize program coding will be addressed |
excel, proc step, %if-%then-%else, macro definition, macro loop, sample, stored macro, macro variable, permanent dataset | source | 10 |
| 57 | SAS Macro Design Issues | H. Ian Whitlock | Two questions motivated this paper. The first came more than twenty years ago at the end of my first programming course when the professor asked, "You now know how to write programs, but do you know when it is appropriate to write a program?" For SAS macro the question might be rephrased. What kind of SAS problem is appropriate to macro? Or when should the solution involve macro code? The second came from SAS-L in September 2001, "What sources discuss how to develop clear and good macro code?" There have been many Beginning Tutorials on macro, and many of the examples in them may illustrate some of the principles that these questions hint at, but I do not know of any source that concentrates on the principles | macro facility, macro variable | source | 9 |
| 58 | SAS Programs for Adding Functionality to the Occupational Mortality Analysis Program (OCMAP) Software | Occupational Mortality | The OCMAP-PLUS program is a software package comprised of several component modules. This software allows the user to perform many of the conventional statistical analyses associated with epidemiologic research studies, particularly those among occupational groups. We have been using this software for more than a decade and have developed several extensive pre- and post- processing modu les in SAS for use in working with OCMAP software. The process of manually abstracting and transforming the raw output from OCMAP to create corresponding Microsoft Word tables was enormously time consuming, resource exhausting and prone to errors. This paper describes the automated processes we have developed, using SAS/AF softwar e, for using OCMAP to generate several types of standardized mortality ratio (SMR) tables, extracting the data from these tables into a SAS dataset, and directly exporting the results into a MS Word document |
dataset, confidence interval | source | 5 |
| 59 | SAS Software Macros - You're Only Limited by Your Imagination, Part II (More Advanced Techniques) | Peter Parker | SAS software macros provide the flexibility to perform advanced programming techniques such as processing real-time user-entered parameters to determine which blocks of code will run and how often. In my previous paper (Part I), I described how to use these techniques to write more elegant code. In this paper, I will show how to apply these techniques to read multiple external files based on a user query. Specifically, I will use a real life application and show how it was implemented, using a tightly written program comprised of macros. I needed to determine how often the public accessed the files on my web server. Through iterations of programs that were the evolution of a thought process, I have developed SAS programs that read the web server's log files based on the time periods requested in an interactive SAS macro window. These programs can generate a summarized report of web usage | macro definition, txt | source | 7 |
| 60 | Sharing Your Tips and Tricks with Others. Give Your Toolbox a Web Presence | John Charles Gober | sample, filename statement, proc step, input statement, proc report | source | 6 | |
| 61 | Simplifying SAS Security | Derek P. Morgan, Michael A. Province |
Our organization has made use of the security built into the SAS System. Encryption and passwording of the datasets used for this project was relatively easy to accomplish. However, day-to-day uses of the data range from analysis to data entry to ad hoc query. Using macro variables to carry the passwords allows us- ers access without hard coding them or typing in a password each time a data set is needed. The Method Creating a SAS system table with the built-in security is easy. There are three levels of password protection: read, write, and alter. You can employ one, two, or all three on any given dataset. In addition, you can encrypt a dataset with the simple dataset option ENCRYPT=YES. Creating an Encrypted Dataset with Passwords DATA foo.bar (ENCRYPT=YES READ=foo WRITE=bar ALTER=foobar); Any time a dataset needs to be opened for access, the password for the desired level of access needs to be specified | macro variable, proc step, dataset | source | 2 |
| 62 | So Many Files, So Little Time to Type Their Names | Francis J. Kelley | macro variable, proc import, proc step, macro loop, macro definition | source | 4 | |
| 63 | SQL Basics | Destiny Corporation (a company) | order by, proc sql, proc step, select, proc print | source | 5 | |
| 64 | Strategic Procurement: The SAS Solution for Supplier Relationship Management | Fritz Lehman | The SAS Solution for supplier relationship management (SRM) is a Web- based application designed to help procurement professionals understand how corporate money is being spent and how suppliers are being used. A ranking component enables procurement staff to rank suppliers based on any set of available metrics. An optimization component computes an optimized supplier portfolio. Users can also perform ad hoc queries against the SRM warehouse. This paper will identify the goals of strategic procurement and illustrate how the SAS Solution for SRM enables procurement professionals to achieve them. The Internet has changed the way people work. More and more SAS solutions and applications are Internet based. Attention will be given in this paper to the technology used in implementing this Web-based solution | proc sql, where statement | source | 5 |
| 65 | Structured Approach Using MACRO Code | Allen J. Blackburn, Foreign Trade |
If you're still looking for another really clever way or trick to use that SAS macro, you don't really need this. But, suppose for instance that you've got that semi small or semi large staff filled with bright journeymen, or novice SAS programmers. And suppose that you have to get that Balance Of Import and Export Trade Press Release produced this month and every month thereafter. Your monthly task should you decide to accept is to process millions of records each month arriving in similar text format from various brokers, carriers, miscellaneous businesses government agencies, and even governments. Each year new features, legislation, and programs require us to tweak and manipulate, yet maintain a basic data structure to incorporate yearly, even monthly changes throughout a seemingly large mountain of SAS programs | proc step, macro definition | source | 6 |
| 66 | Structured Query Language: Logic, Structure, and Syntax | Sigurd W. Hermansen | Three basic themes intertwine throughout the Structured Query Language (SQL). SQL statements provide a convenient way to translate the traditional logic of relations among data items to a form closer to machine languages. The structure of a SQL statement adheres to patterns that contain variations on the same patterns. SQL syntax makes the most of a few key terms. This sequel to 'Ten Good Reasons to Learn SAS SQL' reviews the advantages of more logical, structured, and simpler programming languages, but, unlike its predecessor, recognizes that most beginning programmers who are learning SAS already know the critical elements of SAS SQL. This gentle introduction to SAS SQL helps beginning programmers understand the foundations of a pragmatic, robust, and extensible programming method | proc sql, structured data, inner join, create table, data step, key, dataset, group by, select, proc step | source | 10 |
| 67 | Techniques for SAS Enabling Microsoft Office in a Cross-Platform Environment | Vincent DelGobbo | With the ubiquity of the Microsoft Office suite of products, you often need to use SAS data and analytical results in the Office products EXCEL or Word. But transferring data from SAS to the Office applications can be difficult when the SAS System is installed on a non-Windows platform, such as OpenVMS, UNIX or OS/3790. This paper provides techniques for integrating the analytic processing power of the SAS system, irrespective of platform, with Microsoft EXCEL and Word. The use of the Output Delivery System (ODS) is also discussed |
excel, sample, ods html, ods rtf, output delivery system, ods csv | source | 8 |
| 68 | The Essential Meaning of PROC MEANS: A Beginner's Guide to Summarizing Data Using SAS Software | Andrew H. Karp, Gary M. McQuown |
Learning how to use PROC MEANS is often a difficult task for new users of the SAS System. It is an extremely powerful procedure with numerous options, statements and capabilities. In Version 8 the functionalities of this procedure, long a staple of SAS programs and applications, were significantly enhanced. This Beginning Tutorial will guide you through the basics of how to apply this BASE SAS procedure to summarize and analyze the values of numeric variables in your data sets. By the end of the paper you should have a grasp of what PROC MEANS can do for you, how to avoid common pitfalls in using it, and some of the most important enhancements to it in Version 8 of the SAS System. Once you have mastered the concepts presented in the paper you will be able to use the procedure with more confidence and to learn about additional functionalities in its documentation. |
proc step, dataset, proc means, numeric variable, output, where statement, sas output, character variable, sas base, by group processing, missing value, proc freq, standard deviation, class variable, data science | source | 10 |
| 69 | The Lag-o-Matic: An Improved Method for Selecting the Lag Structure of Multiple Predictor Variables in the Absence of Theory | David C. Sharp, Stephen M. Finnigan |
In applied econometrics, theory generally determines the appropriate lag of each independent (i.e., predictor) variable in a time series regression model. But, how does one determine the lag structure of each predictor variable without theory? Various schemes exist, but-without theor y--variable-by-variable lag selection can be a daunting task that usually results in a time- intensive, "trial and error" approach. To facilitate the selection of lags, this paper introduces the "Lag-o-Matic," a SAS program that eliminates many of the difficulties associated with lag selection for multiple predictor variables in the face of uncertainty | predictor variable, regression analysis, response variable, time series analysis, correlation, out=, proc step, multiple regression, macro loop, lag function, macro definition, %if-%then-%else | source | 5 |
| 70 | The Magnificent DO | Paul M. Dorfman | It is well known that any program can be written without simple branching (i.e. GO TO) by using only three basic constructs: Sequence, Selection, and Repetition. In a high- level computer language, repetition is the most important of the three, for it constitutes the foundation, on which the program automation rests. Indeed, even such a basic operation as processing a file would be practically unfeasible if we had to code a separate reading instruction for each record. Repetition constructs make it possible to code a group of instructions just once, yet execute it many times, and modify the execution from iteration to iteration in a controlled manner. In the SAS Language, explicit repetition is implemented via different forms of the construct known as the Do-loop. The Do statement is exceedingly powerful and laden with a myriad of features | conditional do loop, missing value, dataset, credit card | source | 10 |
| 71 | The Power of PROC DATASETS | Lisa M. Davis, Blue Cross Blue Shield |
The DATASETS procedure can be used to do many functions that are normally done within a SAS DATA STEP more efficiently. For example: Labeling and renaming variables Concatenating and indexing datasets This paper will demonstrate the power of the PROC DATASETS procedure and the enhancements made in V8. This paper is intended for beginning to intermediate SAS users. PROC DATASETS is a powerful procedure that everyone needs to know |
modify statement, proc step, data step, format statement, delete, label statement, cpu time, dataset, index creation, rename statement, constraint | source | 10 |
| 72 | The SAS Debugging Primer | Frank C. DiIorio | proc step, macro variable, put statement, sas log, sample, proc sql, proc freq, proc print, run, automatic variable, sas base, dictionary tables, error message, sas programming, macro put, regression analysis, macro definition | source | 10 | |
| 73 | The Smart Courier for Healthcare | Diane E. Brown | where statement, business intelligence, data protection | source | 4 | |
| 74 | The Ugliest Data I've Ever Met | Derek P. Morgan | Data management frequently involves interesting ways of doing things with the SAS System. Sometimes, "inter- esting" becomes another way of saying "messy", especially when it comes to processing files from outside of your department. This paper will detail the code used to transform raw data we received into raw data that we could use. At first glance, flat file-to-flat file translation wouldn't seem to be a problem. However, this is a list of the programming methods necessary to perform this particular transformation: Automation of a process using SAS System macros Reading from and writing to multiple files with a single DATA STEP Using the SAS System to write its own code "on the fly" Adding sequence numbers for new records in a data set "Merging" without sorting "Arrays" of SAS System macro variables The code in this real-life production application will be used to illustrate each of these methods, and to show the reasoning behind their use |
dataset, macro variable, flat file, input statement, proc step, file statement, macro facility | source | 6 |
| 75 | The Value of SAS in Manufacturing | Eric C. Brinsfield | SAS offers several extremely powerful and useful products, tools, and solutions for the manufacturing sector. Although many other vendors offer niche products that target that market, SAS fills a definite void. As consultants or as project managers within a manufacturing company, you may find it challenging to decide when and where the power of SAS is justified or even essential in the short-term and in the long-term. This paper will clarify The offerings from SAS Where and when SAS is appropriate to use The value SAS brings to the bottom line The knowledge required to build SAS applications in manufacturing. To support the discussion, I will present several sample Web- based applications that have been utilized with great success in manufacturing to capitalize on SAS's analytical depth and data management flexibility | quality control, sample, data mining | source | 4 |
| 76 | Using a RAM Disk to Speed up your Windows 2000 SAS Session | Erik H. Dilts | Old ideas that fall out of favor due to the advent of new technologies rarely make a comeback. However, it is worth examining "the old ways" every so often to see if any benefits can be gleaned from their usage or methodology. The RAM disk is an example of this: a computer optimization method that was considered necessary as recently as SAS version 5 but has since fallen out of general use. Why? For many years, computer memory has been prohibitively expensive in relation to the benefits received by using a RAM disk on a standard workstation, but that is no longer the case. Now one can set up a large (512 MB) RAM drive for roughly $125. This paper will demonstrate that for many (but not all) SAS users, the speed gains realized are easily worth the cost. It is written toward any skill level and is applicable to any version of SAS run on Microsoft Windows 2000 | work library, sample | source | 3 |
| 77 | Using a SAS/IML Nonlinear Programming Procedure To Determine a Single Uniform Weighting Scheme For a Complex Survey Design | Richard A. Moore Jr. | In probability-based surveys, each sampling unit is assigned a probability of being selected into the sample. Each selected unit is assigned a weight equal to the inverse of the probability of selection. For estimation, all responses are typically inflated by the corresponding weight and summed. In a simple design, the same weight is used to weight all variables. In more complex designs, this weight can vary with the variable tabulated (3.00 for payroll, 3.50 for sales, ...). Although multiple weights produce more accurate estimates, they make it very difficult for estimating other statistics (e.g., ratios or regressions), since traditional procedures require that the same weight be used for all variables. Data from the 1997 Surveys Of Minority- and Women- Owned Business Enterprises are tabulated using a multiple weighting scheme. Each record contains up to 12 different weights, corresponding to different published characteristics | linear programming, sample | source | 6 |
| 78 | Using Decision Trees to Identify Medicare Part B Providers for Audit | Noel McKetty | Medicare Providers are selected for audit based on a wide variety of tools, including comparisons to their peers in terms of utilization for various procedures. We use decision trees to examine the efficacy of these peer-comparison statistics in predicting which Providers will be shown to have high overpayments - that is, to owe money back to the Trust Fund. We show that a new screening variable, based simply on dollars paid per patient, is a valuable additional tool for identifying providers for audit | data mining, response variable | source | 4 |
| 79 | Using JMP to Develop a Model Specification for Daily Energy Consumption | Thomas A. Fuchs | Recently, there has been a lot of discussion on the SAS-L SAS news list about SAS Institute's JMP product. What is it? What does it do? Is this a SAS Lite? SAS describes JMP as "the statistical discovery software." Visual and tabular information are linked together to facilitate discovery. One who uses the SAS System will find themselves "over the rainbow" with JMP. This paper will provide a simple example of how the discovery software was used to interactively develop an Ordinary Least Squares (OLS) model specification to explain daily electric energy consumption. The presentation was prepared using JMP 4.0 on a Windows 2000 machine | dataset, rmse | source | 5 |
| 80 | Using ODS to Capture Statistics from PROC GLM | Frank L. Roediger | Through SAS V6.12, there were limitations on what statistics were readily available from statistical PROCs. A rich set of statistics was available, just not readily. Programmers commonly worked around this limitation by using PROC PRINTTO to redirect a PROC's output from the Output Window (its default destination) to a file and then programming a DATA STEP to extract the desired results from that file output. This awkward work-around has been made obsolete by the capabilities of ODS |
proc step, proc glm, proc genmod, least squares mean, dataset, output, ods output, sample, proc contents | source | 6 |
| 81 | Using PROC GREPLAY With ANNOTATE Data Sets for Effective Multi-Panel Graphics | Walter T. Morgan | This presentation introduces SAS users to PROC GREPLAY and the ANNOTATE facility and demonstrates the use of user defined templates to produce a large number of similar graphs (up to 100 or more) on a single page. Of course this would preclude reading values off the axis, but with uniform scaling, these graphs provide very useful visualizations of large data sets. These graphs include scatterplot matrices, but beyond that are great for comparing individual subjects in a study, or any other grouping with a large number of levels (i.e., trellis graphs). They provide quick identification of outliers and influential individuals or groups, allowing for easy data manipulation to examine the robustness of results. The flexibility provided by the ANNOTATE facility combined with the power of GREPLAY make these kinds of graphs surprisingly easy to create. Attendees will be provided with a set of templates developed by the speaker |
proc greplay, proc step, proc gplot, character variable, proc sgpanel, outlier, regression analysis | source | 12 |
| 82 | Using SAS to Control Multistream Binomial Processes with a Chi-Squared Control Chart | Peter S. Wludyka | A process control scheme for mult istream binomial processes is described. A multistream process in one in which the streams are uncorrelated or very weakly correlated, as might arise for example when J units are in a single fr ame that proceeds along a production line. The chi-squared control chart, which can be used for either homogeneous (the streams have identical rates at which nonconforming units arise) or nonhomogeneous (the streams have different rates at whic h nonconforming units arise) processes, will be described and SAS programs provided that can be used to estimate the quantiles of the control limit distribution, estimate the ARL di stribution for process and stream shifts, and produce control charts fo r process control. That is, a complete tool kit will be provided for initiating and maintaining process control using the SAS system | sample, monte carlo, binomial distribution | source | 5 |
| 83 | Using SAS to Estimate Variance by the Jackknife Method | Thomas Mule | Calculating variances for estimates from survey sample data usually can not be done by using traditional SAS statistical procedures like MEANS or REG . These traditional procedures assume that the data is drawn from a simple random sample. Most survey samples involve clustering, stratification and unequal probabilities of selection. There are two methods which can be used to account for these when estimating variance: Taylor Expansion or Repeated Replication. SAS introduced the SURVEYMEANS and SURVEYREG procedures starting in version 8 which uses the Taylor Expansion methodology. For analysts who want to use repeated replication methods like the jackknife, there is currently no SAS procedure to do this. I present a SAS macro which uses the jackknife methodology to estimate the variance for totals and ratios | sample, in= | source | 6 |
| 84 | Using SAS With a SQL Server Database | M. Rita Thissen, Yan Chen Tang, Elizabeth Heath |
Many operations now store data in relational databases. You may want to use SAS to access and update information in SQL Server or other SQL- based systems. We have used SAS to manage and utilize project data in relational databases for a longitudinal survey. The survey applications use SAS through PROC SQL to read data from an existing SQL Server database or SAS macro language to update or insert data into SQL Server tables. The data-loading process also uses SAS formats and functions to clean data, which ensures compatibility with later SQL queries. We will provide examples of SAS code that perform these tasks |
proc sql, sql server, proc step, dataset, txt, odbc connection, relational database, macro variable, proc sort, sample, create table, data step, macro definition | source | 5 |
| 85 | Using Strategic Performance Management to Create Balanced Scorecards in a Healthcare Environment | Ben Cochran | Strategic Performance Management software from SAS Institute provides an extensive, interactive methodology for creating balanced scorecards as a way of measuring performance within organizations. A balanced scorecard also allows for effective communication of strategy as well as performance information throughout an organization. This paper examines ways of implementing a balanced scorecard approach within healthcare organizations. Examples and suggestions are given to show how balanced scorecards might be deployed in such environments. To accomplish its objectives, this paper is divided into four parts. The first section examines the scorecard environment that will be used, including the Map and the Compass. The second part looks at creating a template for the scorecard, while the third part examines creating and populating the scorecard itself. Finally, the last section will address publishing the scorecard | sas consultant, data science | source | 5 |
| 86 | Variable Cross-Referencing Macros - Tools for When Base SAS Isn't Enough | Frank C. DiIorio | macro variable, %if-%then-%else, macro definition, output delivery system, macro loop, proc sql | source | 3 | |
| 87 | Variance Estimates for Census 2000 Using SAS/IML Software | Peter P. Davis | Large variance-covariance matrices are not uncommon in statistical data analysis. For Census 2000, we produced coverage estimates as part of the Accuracy and Coverage Evaluation (A.C.E.) Survey for 448 population subgroups called post-strata. Consequently, the A.C.E. variance estimation operation produced a 448 by 448 variance-covariance matrix for these national post-strata. In obtaining variance estimates of these population subgroups for analysis of the census, publication, and for future research, basic ideas of matrix theory and manipulation were essential in calculating accurate measures of reliability. SAS/IML software allowed for quick and easy matrix multiplication and matrix operations to acquire the desired variance estimates for any combination of the 448 post- strata |
covariance, proc iml | source | 6 |
| 88 | Version 9 Changes and Enhancements | Dana Rafiee, Destiny Corporation (a company) |
output delivery system, sas management console | source | 16 |
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.
HOME
QUICK SEARCH
AUTHORS
KEYWORDS
HELP
BUGS