HOME QUICK SEARCH AUTHORS KEYWORDS HELP BUGS

MWSUG 2011 Papers - Index

117 papers. Source: MWSUG (Midwest SAS Users Group) conference proceedings.

# Title
×
Authors
×
Abstract
×
Keywords
×
Extras Pages
1 "Compare Me" a SAS Datasets Comparison Tool Anurag Katare,
Jayesh Soneji
SAS Datasets comparison tool called "Compare-Me" is a tool built to facilitate programmers to compare "n' pairs of datasets located in two different directory locations. The comparison differences between the datasets are then documented and are presented in an EXCEL sheet. This tool helps compare CSV and EXCEL files using the PROC COMPARE SAS procedures. This tool also gives the user a feature to provide all the "by' variables as keys that would be used for comparison of two datasets proc compare, dataset, proc step, macro loop 12
2 A Graphics Tool for the Evaluation of Longitudinal Outcomes in Clinical Care Matthew C. Fenchel,
Laurie M. Kahill,
Katharine D. Sebastian,
Raouf S. Amin,
Rhonda D. VanDyke
In health-care, physicians and patients dealing with a chronic condition may be greatly helped by a graphics tool that tracks progress. Cystic fibrosis (CF) patients suffer from an overall declining lung function (FEV 1 %). Understanding the progression of FEV 1 % over time is of critical importance, in order to prescribe and participate in interventions. We were asked by physicians at Cincinnati Children's Hospital to develop a patient-specific, graphical tool, to give a "picture" of a lung-function over time. The graph had to meet specific -- and programmatically challenging -- requirements. The SGPLOT procedure is primarily used, along with extensive macro and macro-variable programming. While the original purpose of the program was to meet a specific need, we have attempted to write the code presented in such a way that it is "generalizable" -- i.e. that it can be used for a variety of longitudinal analyses macro variable, proc sgplot, regression analysis, proc step, class variable, date variable 10
3 A Hitchhiker's guide for performance assessment & benchmarking SAS applications Viraj R Kumbhakarna,
Anurag Katare
Almost every IT department today, needs some kind of an IT infrastructure to support different business processes in the organization. For a typical IT organization the ensemble of hardware, software, networking facilities may constitute the IT infrastructure. IT infrastructure is setup in order to develop, test, deliver, monitor, control or support IT services. Sometimes multiple applications may be hosted on a common server platform. With a continual increase in the user base, ever increasing volume of data and perpetual increase in number of processes required to support the growing business need, there often arises a need to upgrade the IT infrastructure. The paper discusses a stepwise approach to conduct a performance assessment and a performance benchmarking exercise required to assess the current state of the IT infrastructure (constituting the hardware and software) prior to an upgrade cpu time, sample, predictor variable, traffic data, proc step, data science 16
4 A Lazy Programmer's Macro for Descriptive Statistics' Tables Matthew C. Fenchel,
Gary L. McPhail,
Rhonda D. VanDyke
The purpose of this macro (%DSTMAC) is to provide a flexible tool that outputs a reader-friendly descriptive statistics table (DST) -- complete with special characters & formatting -- with only the minimal necessary input. The user is able to specify a "By" variable (separate DST's will be produced for each level of "By") and a "Group" variable (statistical comparisons can be made across different levels of "Group"). However, the user does not have to specify which variables are categorical or continuous, how many levels of the "By" there are, nor how many levels of the "Group" variable there are. Means ± standard deviations (n) are produced for continuous variables; n (%) are produced for categorical variables. If the user desires a comparison between "Groups", p-values for t-tests / ANOVA and Kruskal- Wallis nonparametric tests are produced for continuous variables. For categorical variables, p-values for the likelihood ratio chi-square test and Fisher's exact test are calculated nominal variable, proc freq, proc step 11
5 A Macro to Estimate Sample-size Using the Non-Centrality Parameter of a Non-Central F-Distribution Matthew C. Fenchel,
Raouf S. Amin,
Rhonda D. VanDyke
An approximation of the power of an F-test can be estimated using the non-centrality parameter calculated from the observed F-statistic. Often though, investigators planning a study are interested in an "opposite" question: "With the given statistical model and data parameters, what sample-size is needed to obtain a desired power?" This macro expands the approach and SAS code described by Littell (2006) and Stroup (1999) in order to create a user-friendly method of sample-size calculation for user-defined general linear models (including mixed and repeated measures). The program is designed for calculating sample-size needed to obtain a desired power for group contrasts sample, proc mixed, proc step, covariance, macro variable, type i error, repeated measures, effect size, type ii error, response variable, power analysis, by group processing, covariance structure, estimate, sample size, time variable, macro loop, main effect, random slope 20
6 A Practical Approach to Process Improvement Using Parallel Processing Viraj R Kumbhakarna In applications which process huge volumes of data for analysis purposes, it is often essential to minimize processing time to increase efficiency. Large data volumes (in the author's experience, row counts of 1.5 million and up to 2500 columns) result in very long processing times of about 4 to 5 days. It is often required to reduce the execution time for such processes. This paper discusses the following generic steps for improving any process. (1) Identify areas for improvement (understand the process thoroughly; analyze logs to identify steps which take the longest amount of time). (2) Look for certain processes that can be executed in parallel (actual parallelization of independent processes executed one after another; automated virtual multithreading; executing multiple in- stances of jobs in UNIX) cpu time, transaction data, proc step, dataset, proc sort, where statement, if-then-else, proc format, flat file, key=, parallel processing 16
7 A Step by Step Approach to Preparing for a SAS Intelligence Platform Environment Deployment/Migration Brian K. Varney Getting a new SAS Intelligence Platform deployed o r migrated is an exciting time for a company. The p romises heard during the sales cycle and project demonstrat ions need to become actionable processes by the administrators, power users and information consume rs once the installation is complete. The reality i s that this can only happen with careful planning and preparation b efore, during and after the SAS platform installati on process. This paper will address how to plan and prepare for each phase of a SAS Intelligence Platform deployment/migration, such that, when the installat ion and configuration is complete; the platform can be leveraged in an organized manner. We assume that SAS Enterpr ise Business Intelligence platform has already been chosen business intelligence, oracle access 8
8 An EXCEL-ent Method to %INCLUDE SAS Code Irvin Snider There are plenty of times in my job when I get instructions from someone to update some SAS IF-THEN-ELSE logic and I think to myself: "If this guy can type the requirements into an EXCEL spreadsheet, why can't he just update the code himself?" Well, why can't he? In this paper, I will present a method using PROC IMPORT, a TEXT file, an %INCLUDE statement, and PROC PRINTO for the SAS-illiterate-EXCEL-spreadsheet-user to create SAS code without even knowing it. Functions such as COMPRESS, CATS, and TRANWRD that will assist in making the process idiot-proof will also be presented excel, txt, proc step, sample, proc import, proc printto, if-then-else 10
9 An Introduction to SAS Hash Programming Techniques Kirk Paul Lafler SAS users are always interested in learning techniques that will help them improve the performance of table lookup, search, and sort operations. SAS software supports a DATA STEP programming technique known as a hash object to associate a key with one or more values. This presentation introduces what a hash object is, how it works, the syntax required, and simple applications of it use . Essential programming techniques will be illustrated t o sort data and search memory-resident data using a simple key to find a single value hash table, lookup, sas log, composite key, proc sort 8
10 An Introduction to SAS/GRAPH or Quick Tricks with the GPLOT and GCHART Procedures And the Annotate Facility Ben Cochran The power and flexibility of SAS/GRAPH software enab les the user to produce high quality graphs, charts, and maps. With all this strength and flexibility, the new user is sometimes overwhelmed and discouraged from using these powerful tools. However, learning how to use the tools of SAS/GRAPH can be a pleasant experience. This paper introduces several ways to generate graphical representations of your data. Starting with the importance of understanding their dat a, users are lead in a step by step process that ends with the generation of high quality plots and graphs. Finally, the paper ends with a short explanation on how to use the Annotate facility of SAS/GRAPH. Let us begin. Step 1: Understanding Your Data. Is some data more appropriate for generating graphical reports than other data? What data is most appropriate for plots and graphs? T he first data set to be examined is the SASUSER.RETAIL table proc gchart, proc step, bar chart, proc gplot 12
11 An Introduction to the Analysis of Rare Events Nathaniel Derby Analyzing rare events like disease incidents, natural disasters, or component failures requires specialized statistical techniques since common methods like linear regression ( PROC REG ) are inappropriate. In this paper, we'll first explain what it means to use a statistical model, then explain why the most common one (linear regression) is inappropriate for rare events. Then we'll introduce the most basic statistical model for rare events: Poisson regression (using PROC GENMOD or PROC COUNTREG ). KEYWORDS: SAS, Poisson regression, PROC COUNTREG . The graphical output in this paper is from SAS 9.3 TS1M0. All data sets and SAS code used in this paper are downloadable from www.stakana.com/RareEvents regression analysis, proc reg, proc step, poisson distribution, likelihood function, poisson regression, goodness of fit, box plot, proc genmod, akaike information criterion, histogram, response variable 19
12 Annotate your SG Procedure Graphs Mekhala Acharya In SAS9.2, the SAS/GRAPH SG procedures offered a plethora of new options. One notable exception was the Annotate facility. Often graphs are needed with additional informative text and enhancements which are data driven. The use of the SAS/GRAPH ODS Graphics Editor is not recommended for annotation in clinical research, although it can be used effectively to edit and annotate graphs that are created by a wide variety of SAS procedures. This paper shows the effectiveness of using alternate SAS procedures to annotate. Sample code has been provided to show how a lot of the annotate code of traditional SAS graphs can be replaced using very little code. Code reduction to nearly one-third has been seen when using alternate methods to Annotate proc step, proc sgpanel, proc freq 8
13 Application for Survival Analysis through Microsoft Access GUI Zhong Yan,
Jie Li,
Jiazheng (Steven) He
This paper describes the application we developed that allows users who have minimum SAS knowledge to perform survival analysis. This application was built on Microsoft Access using Visual Basic for Applications (VBA). It contains a graphical user interface (GUI) that di vides the analysis tasks into different tabs. Under each tab, user can enter parameters such as dataset location, variable names for time and censor, censoring indicator, and comparison group variable name. After user hits certain button, it will trigger SAS to run Lifetest or Cox regression survival analysis. This paper will introduce the design of the GUI and VBA code to run survival analysis survival analysis, class variable, dataset, kaplan-meier plot, proc phreg 7
14 Application of SAS to monitoring loan defaults in consumer credit portfolios Yevhen Yankovskyy A current economic downturn has negatively affected borrowers' solvency in most communities across North America. However, some communities with either over-heated property market or high dependency on a few employers suffered more than the average. A geographic default monitoring system described in this paper is designed to analyze and effectively present information on default risk concentration in the neighbouring residential areas. This system consists of the following key elements: a) constructing several funnel plots at reasonable confidence levels, b) classification of the communities into risk groups by location of their default rates at the funnel plots, c) transferring borrowers' classification information onto maps with assigning certain colours corresponding to specific default risk groups default rate, sample, confidence interval, confidence level, sample size, credit portfolio, default, proc sort, proc step 9
15 Area under a Curve: Calculation and Visualization Patricia M. Herbers,
Deborah A. Elder,
Jessica G. Woo
At times it is necessary to summarize longitudinal data with a single value for analysis purposes. When each subject has repeated, changing measurements over time, one way to summarize the data is to graph the measurement across time and calculate the area under the curve (AUC) relative to a baseline value. Such a summary necessarily involves a loss of information. For example, subjects with similar AUC values may have very different trajectories, peak amplitudes, or peak timing, which may be important to visualize. To more fully describe the data, a panel of graphs of each subject's original data with the summary AUC value inset may be included with the analysis. SAS programming is presented to calculate the AUC via Riemann sums for data organized in a stacked data set, that is, multiple observations per subject. The use of indicator variables and scatter statement options are then used to produce individual graphs with insets using the SGPANEL procedure, which lacks an INSET option auc, longitudinal data, proc sgpanel, proc step, proc sql 12
16 Automated or Manual Validation: Which One is for You? Richann J. Watson,
Patty Johnson
Validation is an essential part of the derived data set, summary table and listing development process. Validation can require that an independent program be created that confirms the results of the original program are accurate. It is common practice that derived data sets are validated using a more automated method, but it is not as common that table and listing outputs are validated using an automated method. A validation programmer often manually compares the results of her independent programming to the original production output or results. This entails checking not only the titles and footnotes and other cosmetic aspects of the output but also the informational aspect of the output. The manual method of checking the informational aspects of the output is a time consuming process and is subject to human error. This paper presents an automated approach for performing a 100% validation of the informational portion of summary table and listing outputs data cleaning, validation set, dataset, proc step, proc report, proc compare, sas output, sample, macro definition 5
17 Becoming a Better Programmer with SAS Enterprise Guide 4.3 Andy Ravenna Both existing and new users of SAS are turning to SAS Enterprise Guide to write and run their code. Long-time users are accustomed to typing all their code in the Program Editor window and simply clicking Submit. New users do not have this same set of expectations and are more willing to point and click on occasion. But the truth is becoming clear; the winning programmer will be the one who has the expertise to use the best of both worlds-either coding or clicking, depending on which is more efficient for a given task. SAS Enterprise Guide 4.3 contains new functionality that can help anyone become a better programmer. This paper addresses the all-important question: When is it appropriate to code, and when to click? The purpose here is to expose new users as well as those familiar with SAS to tips and best practices that will enable them to return to the office as better programmers sas enterprise guide, proc step, excel, dataset, proc transpose, substr function, sas programmer, work library 40
18 Before Logistic Modeling - A Toolkit for Identifying and Transforming Relevant Predictors Steven Raimi,
Bruce S. Lund
This paper discusses the situation where a modeler must fit a binary logistic model and has available hundreds of potential predictors. Such situations sometimes occur when third-party data sets are added to in-house transactional data for direct marketing applications. We present an efficient methodology and a tool kit (using SAS macros) that identifies a subset of predictors for further study (transformations, correlations, etc.), and eventual usage in fitting a model proc step, logistic distribution, proc logistic, proc freq, predictor variable, logistic regression, missing value, proc rank, proc means, class variable, nominal variable, sample, likelihood function, regression analysis, sample size, macro definition, response variable, numeric variable, macro loop, sample weight 18
19 Benefits of sasCommunity.org for JMP Coders Charles E. Shipp,
Kirk Paul Lafler
The benefits of sasCommunity.org to SAS users are available to JMP users also, but participation has lagged. This is partly due to excellent JMP websites including their discussion groups. Reasons for increased JMP participation on sasCommunity.org are illustrated and discussed, including the interchange of data, statistical and graphics, between SAS and JMP software. The benefit of a community to have your work known and also to help newer users will become increasingly more important as JMP users support sasCommunity.org as its popularity grows proc sgplot, data visualization 9
20 Bootstrap power analysis using SAS Douglas Thompson,
Nort Holschuh,
Bruce Barton,
Ann Albertson
Secondary data analyses are frequently done to address questions in epidemiology and public health. Often investigators conduct such studies without first determining whether the sample size is adequate to test the study hypotheses. As a case study, this paper uses an analysis that examined the association between whole grain intake and body mass index (BMI) utilizing data from the National Health and Nutrition Examination Survey (NHANES), published in Journal of Pediatrics. We show how power analysis for a study like this could be conducted using bootstrapping in SAS. The target audience is biostatisticians, epidemiologists and other investigators seeking to address research questions using secondary data analyses sample, power analysis, sample size, bootstrap, data science, macro call 8
21 Building a Data-Driven Computer Assisted Interview Using SAS/AF Derek P. Morgan Creating a respondent-usable survey using the SAS System may require significant developer time, using traditional SAS System methods of data capture with an end-user interface, since the effort needed is directly linked to the size of the survey. In such an environment, each survey has to be custom built and coded. We developed the method described in this paper to bypass those and other obstacles related to end-user data capture. This method uses SAS datasets to implement program control and provide questions and responses. A fixed series of SAS/AF frames interact with the user, yielding a consistent user interface. The frame code does not change between surveys-the datasets do. However, if the user needs to create a custom frame to handle the administration of a particular question, it is easily integrated into the existing method. This method was initially developed to administer the diet history questionnaire (DHQ) txt, where statement, sample, proc freq 29
22 Building Better Macros: Basic Parameter Checking for Avoiding "ID10T" Errors Matthew T. Karafa No matter how well you document what a macro's parameters are supposed to accept, at least one user will ignore your hard work and try something unanticipated. This presentation describes my parameter checking scheme, which provides such users direct feedback via the SAS log. This feedback looks like a standard SAS error message, and it gives meaningful explanations of what went wrong. Thus, it should prevent the macro author from having a long debugging session, only to conclude that the user passed the macro inappropriate information. This presentation should be applicable to both beginning and advanced macro coders alike error message, macro variable, macro function, proc sql 4
23 Case Study: Generating a DSMC report from an ORACLE database with SAS PROC REPORT Shannon M. Morrison,
Matthew T. Karafa
The Department of Quantitative Health Sciences at the Cleveland Clinic often works on FDA regulated studies, which store data in ORACLE databases. ORACLE data is most often not immediately appropriate for reporting or analysis. This paper details methods used to transform data from an ORACLE database (transferred to the data management team as SAS data sets) into layouts appropriate for both analysis and reporting. Two macros were created to run data from six different sets of lab results. The first macro transforms data from ORACLE into a layout that can be run in the REPORT procedure and used in future analyses. The macro only requires the user to enter the name of the SAS file containing data from the desired ORACLE table. Problems encountered and discussed include generating valid SAS variable names from potentially long test names or those with special characters macro variable, oracle, proc step, proc report, variable, proc sql, data governance, macro facility, ods pdf, macro definition 8
24 Case Study: Geospatial location analysis & reporting application using SAS, Google Maps & MS Excel Adney Fernandes This paper discusses a way to integrate Google map using web browser ActiveX control within an EXCEL workbook to create a practical geospatial reporting application for displaying targets. The geospatial information is obtained by retrieving geo-coordinates (latitude & longitude) information for any US postal address using the Google map API web services, SAS, and Java. Then SAS is used to create state-wise xml files containing target geo-locations. HTML and JavaScript are used to display Google map using Google map Javascript API v3 to load the map into EXCEL and render state-wise target location with excel, web service, sample 13
25 Clearing Hurdles in Report Optimization: Custom Sorting Macros, Traffic-lighting Entire Rows, and Forcing SAS Formats into Microsoft Excel Jacob Serafino,
Mitch Weiler,
Asha Jayaprakash
Comparative reports tend to pop up in almost every analytical context: penetration reports compare client characteristics to the general population; pilot campaigns compare treatment groups to a control group; fiscal reports compare month-to-month sales. With so many reports to run, use of the SAS macros language is an absolutely critical first step toward optimizing your reporting processes. By adding clarity and flexibility to your code, macros increase efficiency and reduce human error. Chances are that you've run into some of the same hurdles that we encountered while optimizing Infogroup's reporting solutions. This paper will demonstrate how we overcame these obstacles, featuring macro code that custom-sorts your categorical variables in any user-defined order, highlights any given row in your report, and forces SAS formats into EXCEL excel, proc report, proc step, character variable, format statement, proc sort, macro loop 9
26 Comparing Over-the-Counter Drug Prices and Availability Using Nonparametric Tests Deanna Naomi Schreiber-Gregory A study comparing over-the-counter drugs in terms of availability and prices was performed. Samples of various over- the-counter drugs were obtained from four stores using a block design. Three tests were then conducted to analyze the data obtained for this study. The first test compared differences in treatment effects using the Friedman test for a randomized complete block design. In the second test, researchers tested for the availability of drugs using the Cochran's test. A third test used a new nonparametric test for mixed design proposed by Mathisen (2011) and Ndungu (2011) and was performed to test for non-decreasing treatment effects (prices among four stores) sample, treatment effect 3
27 Connect with SAS Professionals Around the World with LinkedIn and sasCommunity.org Kirk Paul Lafler,
Charles E. Shipp
Accelerate your career and professional development with LinkedIn and sasCommunity.org. Establish and manage a professional network of trusted contacts, colleagues and experts. These exciting social networking and collaborative online communities enable users to connect with millions of SAS users worldwide, anytime and anywhere. This presentation explores how to create a LinkedIn profile and social networking content, develop a professional network of friends and colleagues, join special -interest groups, access a Wiki -based web site where anyone can add or change content on any page on the web site, share biographical information between both communities using a built - in widget, exchange ideas in Bloggers Corner, view scheduled and unscheduled events, use a built -in search facility to search for desired wiki -content, collaborate on projects and file sharing, read and respond to specific forum topics, and more 13
28 Consulting: Career Path Considerations Charles E. Shipp,
Kirk Paul Lafler
Consulting is an exciting vocation with benefits and also challenges. At what point are you ready to start consulting? As your SAS analytical and programming skills develop, it is wise to plan ahead in your career. While it is an option to retire where you are, there are also opportunities to extend and use acquired skills and talents for consulting during and after a successful career. An excellent way to explore possibilities is to visit with successful SAS consultants. They can provide guidance about specialty consulting, team consulting, book authoring, and many other possibilities to ex pand and extend your career. In this paper, we discuss the success factors in beginning a successful consulting career, but use most of the time to expand on the important considerations in choosing this career path. Considerations will include the timing of preparation and actions for moving into consulting sas 9, sas consultant 8
29 Consulting: Career Path Considerations Kirk Paul Lafler,
Charles E. Shipp
Consulting is an exciting vocation with benefits and also challenges. At what point are you ready to start consulting? As your SAS analytical and programming skills develop, it is wise to plan ahead in your career. While it is an option to retire where you are, there are also opportunities to extend and use acquired skills and talents for consulting during and after a successful career. An excellent way to explore possibilities is to visit with successful SAS consultants. They can provide guidance about specialty consulting, team consulting, book authoring, and many other possibilities to ex pand and extend your career. In this paper, we discuss the success factors in beginning a successful consulting career, but use most of the time to expand on the important considerations in choosing this career path. Considerations will include the timing of preparation and actions for moving into consulting sas 9, sas consultant 8
30 Contour Plots for Time Series Analysis David J. Corliss This new SAS tool is two-dimensional color chart for visualizing changes in a population or system over time. Data for one point in time appear as a thin horizontal band of color. Bands for successive periods are stacked up to make a two - dimensional, with t he vertical direct ion showing changes over time. As a system evolves over time, different kinds of events have different characteristic patterns. Creation of T ime Contour P lots is explained step by step. Examples are given in astrostatistics, biostatistics, econometrics and demographics. Keywords: Data Visualization, PROC CONTOUR, Time Series Analysis contour plot, time series analysis, interval variable, proc step 11
31 Creating a Clean Multi-Tabbed SDTM Dataset Specification Spreadsheet Dongju Liu,
William Conover
This paper describes an efficient approach of creating SDTM data set specifications for SAS data sets used in clinical trials. First, a standard SDTM data set specification template is created according to the SDTM Implementation Guide (SDTM IG) V3.1.2 and is then saved as a multi-tabbed EXCEL workbook. Data set specifications for individual clinical trials are drafted based on this standard template. After review and revision, a SAS program is run to remove any unneeded columns and rows, and to create a final 'clean' version of the specifications. The Dynamic Data Exchange and EXCEL macros are the main tools used in the SAS program excel, clinical trial, dataset, xls, cdisc 5
32 Creating Metadata-Driven Program Logic with the SAS Call Execute Routine - An Example with CTC Grading of Laboratory Results Robert W. Graebner Certain programming tasks require the application of complex, data-dependent rules in the derivation of classification variables. One such example is assigning a CTC grade to laboratory results. Determination of the CTC grade depends on the laboratory parameter and its value in relation to either fixed values or mul tiples of the upper and lower limits of the normal range. This paper presents a solution in which a DATA STEP is used to access CTC grading logic metadata and the CALL EXECUTE routine is used to place the associated SAS statements in the SAS command stack for execution after the DATA STEP has finished. This process creates a virtual DATA STEP that will assign the CTC grades to each observation in the laboratory results data set call execute, when, sas log, macro variable, macro definition, &variable, dataset, laboratory data, character variable 8
33 Creating Multidimensional Data in SAS for Excel Pivot Tables Chandy Karnum If you are an analyst in data driven industry you are constantly faced with the challenge of digesting large volumes of data into meaningful information in the cheapest way possible. Although there a number of sophisticated/expensive software packages and business intelligence systems specifically designed to provide the solution many of the analysts and organizations have used analytical tools such as Base SAS and EXCEL to get the job done. This paper will attempt to demonstrate how using only a few steps in Base SAS you can create the multidimensional data for EXCEL-pivot tables. Nowadays, EXCEL has become the common denominator for business analysis in the industry. However, EXCEL lacks the power to digest huge volumes of data found across any industry. Over the years Base SAS has grown to become the leader in data extraction and summarization regardless of the data source or volume excel, sas base, proc step, extract 8
34 Creating Stylish Multi-Sheet Microsoft Excel Workbooks the Easy Way with SAS Vincent DelGobbo This paper explains how to use Base SAS 9 software to create multi-sheet EXCEL workbooks (f or EXCEL versions 2002 and later). You learn step-by-step techniques for quickly and easily creating attractive multi-s heet EXCEL workbooks that contain your SAS output using the Ex celXP ODS tagset and ODS styles. The techniques th at are presented in this paper can be used regardless of t he platform on which SAS software is installed. Yo u can even use them on a mainframe! Creating and delivering y our workbooks on-demand and in real time using SAS server technology is discussed. Although the title is sim ilar to previous papers by this author, this paper contains new and revised material not previously presented excel, xls, output delivery system, sas output, proc report, proc template, sas base, proc step, by group processing, ods xml, sample, proc format, dataset 22
35 Customizing Survival Plot by %Survivalplot Macro Zhong Yan Several macros were reported to generate Kaplan-Meier plots. However, the existing macros typically draw up to two groups with limited flexibility for the summary statisti cs and curve style. This paper introduces the new macro %Survivalplot. The major features are: 1. It can draw up to nine survival curves with median survival time, number of events and censored subjects, and the num ber of patients at risk at each time; 2. For two group comparison, it can also show hazard ratio and the log-rank test p value; 3. User can easily update the color and line pattern for each curve; 4. User has the flexibility to control the location of the summary statistics and its f ont size on the graph; 5. The plot data can be exported to an EXCEL file; 6. User can enter up to four titles and four footnotes proc means, kaplan-meier plot, proc step, hazard ratio, proc gplot, macro variable, p-value, macro call, median survival, rank test 12
36 Data Manipulation with SQL Mara Werner SQL was developed to pull together information from several different data tables - use this to your advantage as you organize the results of your analysis. Using SQL, you can make your data more accessible to a new audience by explaining numerical data in words. Then, organize your results by creating a results summary table. As an added bonus, the results summary table acts as an index that can help you find sections of your SAS code later proc sql, proc step, if-then-else, dataset, when 7
37 Data Quality Review for Missing Values and Outliers Ying Guo,
Bradford J. Danner
Before performing any analysis on a dataset, it is often useful to perform a review of the dataset in order to detect missing values and outliers. The macro provided in this paper is a SAS macro program designed to check the data in a time-efficient and user-friendly way, which can generate the following content: First, the macro can generate an EXCEL report to determine whether the variables have missing values or outliers, and report the percentage of missing values. Second, the macro can display all records which contain missing values and/or outliers, grouped by variables in an EXCEL file. Each tab will represent the exception records for one variable. This macro can automatically check all variables regardless of the dataset structure and variable names. Also, an extended version of this macro can perform an automatic check of a whole SAS data library at one time missing value, outlier, excel, character variable, proc freq, proc step, macro definition 9
38 Date/Time Issues with SAS: What to do if there is No Error Diahn L. Allen This document will talk about how using dates in SAS can produce false results but not give you an error, and how to correct that . The point of this paper is to sho w that even routine coding can result in data inconsistencies. This paper emphasizes the need to thoroughly check your code, your log and your results. Keywords: Date Time Error sysdate9, proc freq, date variable 3
39 Dealing with Duplicates in Your Data Joshua M. Horstman,
Roger D. Muller
As SAS programmers, we deal with data all the time. We understand the principle of "garbage in, garbage out." Data is an essential component of the modern business, and erroneous data can have serious ramifications. In today's world of globally distributed teams, we often work with data coming from sources far beyond our control. This makes it even more critical for the SAS programmer to become adept at dealing with data issues. In this paper, we address one of the most common data issues: duplicate data. Using simple examples, we describe different types of duplicate data and describe strategies for identifying questionable records so they can be evaluated and appropriate action taken. This requires the programmer to understand which variables in their data constitute a unique key (BY variables). The paper also features an in-depth discussion of options on PROC SORT (NODUP, NODUPKEY, DUPOUT) as well as alternative methods such as PROC FREQ and PROC SQL proc step, proc sort, out=, proc freq, proc sql, unique key, sample, by group processing, sas programmer, group by 7
40 Deep Dive into the PIM and DDI Data Michelle Hopkins Through a contract funded by CMS, work was done to increase awareness and decrease the number of Medicare beneficiaries who have been prescribed a potentially inappropriate medication (PIM) and/or medications that could result in a drug on drug interaction (DDI). SAS 9 was used to analyze Part D claims data to track progress on improving rates as well as taking a deeper dive into the data to identify trends and opportunities for improvement. From baseline to re-measurement, Minnesota saw a relative improvement rate (RIR) of 29.3% for PIMs and 12.6% for DDIs. The nation saw RIRs of 15.4%, and 10.6%, respectively. Minnesota's PIM data showed that the biggest decrease was in the drug categories of narcotics. Compared to the actual Medicare population, there are a higher proportion of females being prescribed PIMs and DDIs. Specific counties in Minnesota were found to have worse rates of PIMS and DDIs. This paper will show the analysis done, the SAS code used, and important findings proc freq, sas enterprise guide, proc means, insurance claims, proc step 20
41 Does Lawrence Smoking Ban Impact Kansas Liquor Sales? Lijia Mo Four cities in Kansas (Johnson County, Manhattan, Topeka and Wichita) have been investigated to reveal the economic impact of a newly enacted Lawrence smoking ban on liquor sales in bars and restaurants in Kansas. Real world time series data on taxable liquor revenue of these cities covers 4.5 years pre ban and 3 years post ban around the enact date in Lawrence as of July 4th 2004, totally including 90 observations. Revealed economic impact assists in legislative consideration on state- wide ban, although current proposal includes county referendum to opt-out and opposition arises from bar owners taken as violation of state's constitution. Based on pre ban, researcher uses the major steps of Box Jenkins time series methodology to forecast one period ahead on post ban, including model identification, model estimation, and diagnostic checking the basic assumptions on the random shock time series analysis, binary variable, null hypothesis, sample, moving average, correlation 12
42 Driving Clinical Safety Reviews with Data Standards Geoffrey A. Mann Data standards foster the development of software that permits informed analysis of the data, shortening the path to discovery. Emerging clinical data standards have led to the creation of JMP Clinical, which combines the visual exploration capabilities of JMP software with the statistical rigor of SAS Analytics. Interactive dashboard displays enable clinicians to create sophis ticated visual summaries of events, findings, and interventions, and then to zoom and filter through the data to explore subject level details (e.g. patient profiles). P attern discovery and predictive modeling techniques, used behind the scenes, enable me dical reviewers to explore the study data with a visually driven user interface, lending strong evidence to the value of data standards clinical trial, adverse events, clinical data, data standard, relative risk, study day 7
43 Dynamically Evolving Systems: Cluster Analysis Using Time David J. Corliss Cluster analysis, often referred to as Segmentation in business contexts, is used to identify and describe subgroups of individuals with common characteristics that distinguish them from the rest the populat ion. While segments are often identified using static characteristics, evolving systems may be better described by how things change over time. A medical patient may be classified by the amount of time since an important event such as a diagnosis, economic activity may be segmented by stages in an economic cycle and neighborhoods grouped using by stages in generational evolution. An important success of this technique is in astrostatistics, where a supernova is classified by how the amount of light it produces changes over time. Examples are given in biostatistics, meteorology and econometrics as well as astrostatistics to demonstrate how time interva ls may be used to identify population subgroups in segmentation and cluster analysis time series analysis, cluster analysis, proc fastclus, proc step, proc standard 12
44 Estimating Design Effects for Means, Proportions and Totals from Complex Sample Survey Data Using SAS Proc Surveymeans Trent D. Buskirk Recent advances in survey data analysis procedures continue to be made in the latest releases of SAS software. Despite these advances, functionality for computing design effects for complex sampling designs are not readily available in PROC SURVEYMEANS. In this presentation we will use the 2010 BRFSS National survey data to illustrate how to compute design effects for means, totals and proportions computed from PROC SURVEYMEANS by using PROC UNIVARIATE, PROC MEANS and PROC FREQ design effect, proc step, sample, proc surveymeans, proc surveyreg, random sampling, regression analysis, proc univariate, sample weight, proc calis, sample size, missing value, data statement, response variable 13
45 ETL Anatomy 101 Thomas A. Miron Extract, Transform, and Load isn't just for data warehouse. This paper explains ETL principles that can be applied to any application that handles data feeds for reporting, decision support, modeling, and, of course, data warehouse/mart. Here we will expand on my MWSUG 2010 paper "Introduction to Business Intelligence" by drilling down into the ETL component of BI systems. The goal is to demystify ETL terminology, explain ETL design, and show how your project can benefit from ETL or an ETL-like process. What Is ETL? ETL is Extract, Transform, Load. While ETL is often associated with formal data warehouse and data mart systems, ETL, or an ETL-like process is a key element of many reporting and analysis systems even if these are not considered part of a data warehouse. The key feature of ETL is that it brings data from the outside world under the control of your application data warehouse, data cleaning, surrogate key, proc freq 7
46 Evaluation of Novel Markers in Risk Prediction Kevin F. Kennedy Prediction of dichotomous events is an important statistical concept. In clinical research, development of a disease or complication after a procedure is often an endpoint of interest. However, this concept is multi-disciplinary. Many published models exist to predict a dichotomous outcome, including a model to predict winners in the NCAA basketball tournament and a recently published risk model to predict the likelihood of a bleeding complication after percutaneous coronary intervention. It is important to note, however, these models are dynamic, as changes in population and technology lead to discovery of new and better methods to predict outcomes. An important consideration is when to add new markers to existing models. While a significant p-value is an important condition, it does not necessarily imply an improvement in model performance logistic distribution, proc step, create table, proc logistic, group by, proc sql, logistic regression, macro definition 14
47 Fuzzy Merges - A Guide to Joining Data sets with Non-Exact Keys Using the SAS SQL Procedure Robert W. Graebner Most of us are familiar with merging SAS data set s based on o ne or more common variables that h ave exact matching values in each of the files. There are situations however, when it is necessary to match records based on criteria other than simple equality. One example is merging data regarding an adverse event in a clinical trial with data regardin g the most recent treatment received prior to the onset of the event. Because this type of merge involves non-exact matches, they are sometimes referred to as fuzzy merges. This paper provides a step by step guide to how SAS SQL Procedure performs a merge and how the features of SQL can be used to perform fuzzy merges adverse events, proc sql, where statement, proc step, group by, select, trial elements 5
48 Graphing a Progression of Time Series Plots with ODS Graphics Nathaniel Derby,
Laura Vo,
Perry Watts
Graphing is an essential step for exploratory data analysis and statistical modeling. However, when graphing an ordered progression of time series plots, it can be difficult to effectively display the progression without looking disorganized and chaotic. This paper shows a couple of approaches to this problem using the GPLOT procedure from SAS/GRAPH software and the LAYOUT OVERLAY,LAYOUT DATAPANEL andSERIESPLOT statements from the Graphic Template Language (GTL) in ODS statistical graphics. KEYWORDS: SAS, graph, GTL, time series. All data sets and SAS code used in this paper are downloadable fromhttp://nderby.org/docs/RUG11-TSPlots.zip time series analysis, exploratory data analysis, data science, series plot, random intercept, macro definition 11
49 How to Use SDTM Definition and ADaM Specifications Documents to Facilitate SAS Programming Yan Liu SDTM and ADaM implementation guides set strict requirements for SDTM and ADaM variable attributes, including their name s, labels, types, formats etc. Without a good programming solution, this can make clinical SAS programming time consuming and prone to mistakes. This pape r introduces a simple method that utilizes SDTM definition and ADaM specifications documents to improve clinical SAS programming efficiency and accuracy pharma programming, sas programming, macro definition, sdtm domain, excel, clinical sas, macro variable, dataset, format statement, proc import, sample, proc step, cdisc 5
50 I Don't Look Good in Orange or Stripes Susan M. Fehrer Clinical programmers are often asked by data managers, statisticians, project directors, or their supervisors to hard code or change clinical trials data to match the Case Report Form or other data collection medium rather than to open the database and make the appropriate change(s). However, there are federal regulatory regulations that set forth policy and enforcement of such audit trail, crf, adverse events, data cleaning 4
51 Import and Output XML Files with SAS Yi Zhao XML files are widely used in transporting data from different operating systems or data storages. Processing XML files efficiently becomes one of the necessary technical skills for SAS programmers. This paper presents four aspects in importing and exporting XML files with SAS. They include: (1). Using XML engine LIBNAME and DATA STEP to import or output data between XML and SAS datasets. (2). Using PROC COPY. (3). Developing XMLMap to facilitate the conversion; and (4). Importing XML file to EXCEL and converting it to SAS dataset. Sample program codes and tips are provided and discussed dataset, excel, proc step, proc copy, sas programmer, proc import 6
52 In Search of the LOST CARD Andrew T. Kuligowski "Everyone who's not here, raise your hand." It's an old joke, but it points out the difficulty of identifying persons or things that are not present. The SAS System has its own version of this chestnut, the SASLOG message indicating that there are one or more gaps in one's input data input statement, infile statement, sample, numeric variable, missing value 9
53 Increased Life Expectancy from Positive Perceptions of Retirement Reuben Ng,
Deepak C. Lakra,
Becca R. Levy
Studies on the relationship between retirement and subsequent health, including longevity, have produced mixed findings. One reason may be that these studies have treated retirement as a uniform event. In contrast, we examine whether individuals' attitude toward retirement (ATR) can impact longevity. As predicted, we found that participants with positive ATR at the start of the study lived longer than those with negative ATR. They had a median survival advantage of 4.9 years. The cohort was the Ohio Longitudinal Study of Aging and Retirement that measured ATR in 1975 and followed longevity for 23 years. Through survival analysis, we found that participants with negative ATR had 1.71 times higher risk of death as compared to those with positive ATR after controlling for relevant covariates including age, employment status, functional health and socioeconomic status. Possible mechanisms driving the ATR-longevity link are discussed hazard ratio, sample, interval variable, multivariate analysis, median survival, proc phreg, baseline characteristics, nominal variable, regression analysis, predictor variable 10
54 Interpreting the Differences Among LSMEANS in Generalized Linear Models Robin High Through ODS Graphics, various SAS procedures now of fer options to produce mean plots and diffograms for visual interpretation of Lsmeans and their differences in Generalized Linear Models. Compared with "lines" and line-by-line plots of differences in ls means, the diffogram is the only graphical display of differences that allows four inferential and two perceptual interpretations to be made. These plots a re very informative and easy to interpret across the levels of single factors in an ANOVA. In the presence of interactions where one wishes to examine simple eff ects by slicing differences of one factor by the levels of the second factor, the diffogram can be difficult to visually interpret. The layout of the diffogram is described which will then allow enhanced examinatio n of Lsmean differences confidence interval, data visualization, proc step, standard deviation, sample, line chart, sample size, fixed effects, proc glimmix, anova, proc mixed 11
55 Introducing SAS Structural Equation Modeling for JMP: A New User Interface That Brings the Power of SAS/STAT Software to JMP Software Wayne E. Watson Structural equation modeling evaluates how well a theory in the form of a model fits data. Models might involve a number of interrelated variables and include latent variables, which cannot be measured directly, along with other variables that are directly measured. A new application, SAS Structural Equation Modeling for JMP 1.1, features a graphical model builder that is useful for creating these interrelated models. The user interface appears in JMP software, and the calculations are performed by the SAS/STAT CALIS procedure. You create models by dragging variables onto a diagram, perform the analysis, and save and reuse the results proc calis, covariance, dataset, correlation, latent variable, raw data, proc freq 18
56 Is It Time to Upgrade CDISC SDTM from v1.1/v3.1.1 to v1.2/v3.1.2? Susan M. Fehrer The FDA is now accepting submissions in CDISC SDTM v1.2/v3.1.2. However, many studies are in v1.1/v3.1.1 format. Should these studies be converted again, this time to v1.2/v3.1.2? If not, what will happen with a common CRF variable, RACEOTH, that is, in v1.1/v3.1.1, in SC.SCTESTCD and is in v1.2/v3.1.2 in SUPPDM.QNAM? The author will give practical examples and offer assistance to those facing this common situation trial elements, clinical data, cdisc 3
57 JMP as an Analytic Hub: Using JMP to Build Custom Applications via SASand R Kelci J. Miclaus,
Clay Barker,
Jun Ge
13
58 JMP as an Analytic Hub: Using JMP to Build Custom Applications via SASand R Kelci J. Miclaus,
Clay Barker,
Jun Ge
In today's data -rich era, statisticians and analysts have a number of tools available for data analysis. This paper presents examples and explores applications of using JMP 9 as a data analysis hub. The integration of JMP with both SAS and R -coupled with a new add-in architecture that makes it easy to create, distribute, and install custom applications-provides unlimited options for data exploration and analysis. Examples presented highlight the incorporation of R packages to perform novel analysis techniques as well as SAS procedures to implement advanced statistical methods within the JMP graphical user interface. Such applications allow you to take advantage of the dynamically interactive JMP visualizations, the depth of SAS statistical procedures, and the breadth of R packages available regression analysis, elastic net, time series analysis, proc step, proc mds, proc ucm, proc princomp, data cleaning, sas output 13
59 Leveraging the SAS Open Metadata Architecture Ray Helm,
Yolanda Howard
In the SAS Enterprise BI and Data Integration environments, the SAS Metadata Model contains a wealth of information about system configuration, data objects, report metadata, users, groups, and security authorizations. The ability to query the metadata adds a powerful tool to the SAS inventory and can be used for a wide range of purposes including surfacing metadata related to the data delivered to end users, adding relevant information to metadata objects, and performing bulk alterations to the metadata itself. This paper will provide an overview of the key tools for leveraging the Open Metadata Architecture including: the PROC METDATA procedure, the Metadata Browser utility, and the SAS XML Mapper. We will present examples of how we have employed these tools for bulk modifications of stored processes/application server associations and for generating a Data Elements Dictionary for use by our Data Warehouse consumers proc step, dataset, data warehouse, proc sql 14
60 Managing Datasets at Library Level via Dynamically Constructed, DICTIONARY Tables-Driven SAS Code Jingxian Zhang The SAS System read-only DICTIONARY tables contain valuable information about metadata such as SAS libraries, table names, column names, etc. Integrating the information into SAS programming helps create dynamic and efficient scripts to manage datasets. In this paper, I will first discuss how the DICTIONARY tables are accessed and what information is available to SAS users. Then I will show how to dynamically construct DICTIONARY tables-driven code via three approaches - SQL select into macro-variable method, call execute method, and generate-and-include an external file method. The three macros developed by the author using the above approaches manage all datasets at the library level - capitalize all character data, dump all data into an EXCEL file with each datasets being its own tab in EXCEL, and query all character data with certain length. Using the basic techniques present in these macros, SAS programmers can develop their own dynamic scripts to accomplish other tasks dictionary tables, call execute, proc sql, proc step, create table, macro variable, excel, sas programmer, select, dataset, update statement, clinical trial, sas library 9
61 Money Demand Estimation using SAS Gerard G Tano The paper attempts to empirically investigate the stability and model Cagan money demand using SAS/ETS procedures PROC ARIMA and PROC VARMAX for the case of the W est Afr ican country Cote D'Ivoire. The behavior and stability of money demand in the long run has been documented in recent years for mostly developed countries but rarely the literature has focused on the same issue in the poor and underdevepped economies. Therefore in filling the gap we try to see whether eac h definition of money M1 or M2 is stable for the Ivorian economy and their long run movement. Our finding is th at there is an evidence of long-run equilibrium relationship between either money M 1 or M 2 and its determinants real inc ome and the expected inflation . However there is a large difference in the magnitude of the el asticity of income with the greater being the elastic ity of income with respect to M2.M2 money demand is highly elastic (1.40) compared to an inelastic M1 money demand (0.939) time series analysis, proc step, proc arima, interest rate, proc varmax, regression analysis, unit root 16
62 Moving between an XML document and SAS using the SAS XML Mapper Margo Law Moving between an XML document and SAS using the SAS XMLMapper. Starting with an XML document containing multiple tables this presentation will demonstrate how to use the SAS XML Mapper to move the multiple tables into SAS, either individually or all at once. Additional items that will also will be demonstrated and discussed include the difference between an XML library and a SAS library and moving between the two, and moving SAS data sets back out to an XML document, either individually or multiple data sets at once, along with the benefits and difficulties of doing so sas library, dataset 5
63 Objective tumor response and RECIST criteria in cancer clinical trials Jian Yu Objective tumor response is one of primary endpoints for efficacy in cancer clinical trials, and has been widely utilized by clinicians in evaluation and guidance of cancer treatments as well as in prediction of clinical outcomes. To date, the most commonly used standard for determining the tumor response is a set of published rules called Response Evaluation Criteria in Solid Tumors (RECIST). According to RECIST, there are so many information need to be considered for estimating objective tumor responses, but usually no great detail instruction on how to appropriately apply them into practice. Thus, it is not easy and straightforward for SAS programmers to incorporate RECIST criteria into the analyses for cancer trials with great confidence. Here the author will systematically summarize the general process for dealing with tumor response data in clinical trials, and use a SAS macro to demonstrate and simplify the whole process clinical trial, best response, primary endpoint 6
64 On Deck: SAS/STAT 9.3 Maura E. Stokes,
Fang K. Chen,
Ying So
SAS/STAT 9.3, coming soon to a site near you, delivers numerous enhancements to the statistical software. The PHREG procedure supports frailty models for incorporating random effects in Cox regression, and the MCMC procedure provides a RANDOM statement to facilitate fitting Bayesian models with random effects. The NLIN procedure has been updated, and the MI procedure offers additional flexibility by providing a fully conditional specification method. The new SURVEYPHREG and HPMIXED procedures are also outfitted with additional capabilities. This talk reviews the highlights of SAS/STAT 9.22 and then describes important SAS/STAT 9.3 enhancements with practical illustrations, mainly from the SAS/STAT 9.3 documentation poisson distribution, likelihood function, proc mixed, sample, prior probability, maximum likelihood estimation, poisson regression, proc step, regression analysis, estimate, proc phreg, response variable, zero-inflated poisson, confidence interval, logistic distribution, proc freq, binomial distribution, numeric functions, proc nlin, proc genmod 20
65 Oncology Trials 101 - The Basics and Then Some David J. Polus What makes oncology trials unique? What characteristics do they share with other clinical trials? What does the future hold for oncology research? This paper looks at the oncology therapeutic area under a microscope to determine the answers to these questions and more clinical trial, adverse events 4
66 Optimizing Clinical Research Operations with Business Analytics David Handelsman SAS is widely accepted as the gold standard in determining safety and efficacy for clinical trials, and provides the primary mechanism for preparing data for these traditional clinical research analysis activities. Most traditional SAS users in the pharmaceutical industry, however, are unaware of the broad range of SAS analytics that are widely applied in other industries. This paper will discuss and describe how SAS business and advanced analytics can be used to: design better trials target patient recruitment select the best investigator sites improve resource projections * optimize other operational activities These operational activities are historically managed through experience and spreadsheets. Experience and spreadsheets rarely provide the quantitative insight to make the best and most informed decisions clinical trial, clinical research, data cleaning, life sciences, likelihood function 6
67 Outlier resistance of multivariate bioequivalence procedures Srinand P. Nandakumar,
Joseph W. McKean
Bioequivalence tests of two drugs on pharmacokinetic parameters such as AUC (Area under the curve) and Cmax (maximum concentration) are implemented using least squares (LS) procedure on Schuirmann's (Schuirmann, 1987) two one-sided hypotheses. Nandakumar and Mc Kean (Nandakumar, et al., 2011) generalized Schuirmann's hypothesis to a multivariate setting ( for LS and its robust analogue). The least squares pro cedures are extremely susceptible to outliers and require strict adherence to the normality assumption. In this paper, a brief discussion on the merits of robust analysis following the principle of component-wise ranks on small sample data with outliers is investigated. SAS programs are presented to illustrate through an example , the effects of outliers on LS procedures as applied to bivariate bioequivalence. Furthermore, the resistance to outliers by the robust procedure on this dataset is shown outlier, sample, covariance, qq plot, treatment effect, box plot, pk parameter, correlation 13
68 Pagination in Clinical Trial PROC REPORT ODS Chao Su,
William Conover
PROC REPORT is used extensively in clinical trial SAS programming. However, the procedure itself does not have a direct option to provide correct pagination for customized reports within the output delivery system (ODS). In response to this need, this paper describes a series of macros combined with a simple DATA STEP that provides accurate, manually controlled pagination of ODS output in rich text format (RTF) or portable document format (PDF) files proc report, proc step, clinical trial 5
69 Point-and-Click Programming Using SAS Enterprise Guide Kirk Paul Lafler,
Mira Shapiro
SAS Enterprise Guide empowers organizations exploiting the power of SAS by offering programmers, business analysts, statisticians and end -users with powerful built-in wizards to perform a multitude of reporting and analytical tasks , access multi-platform enterprise data sources, deliver data and results to a variety of mediums and outlets, perform important data manipulations without the need to learn complex coding constructs, and support data management and documentation requirements quickly and easily. Attendees learn how to use the graphical user interface (GUI) to access tab -delimited and EXCEL input files; subset, group, and summarize data; join two or more tables together; flexibly export results to HTML, PDF and EXCEL; and visually manage projects using flowcharts and diagrams excel, sas enterprise guide, dataset, proc means, data governance, delimited file, sas output, proc sql 18
70 PROC NLMIXED for Basic Non-Linear Regression Keith Dunnigan PROC NLMIXED is a SAS procedure which can be used to analyze nonlinear regression models containing more than one variance component. This presentation provides an introductory primer to PROC NLMIXED regarding its basic use and syntax in the context of a basic non-linear regression model. The syntax for a non-linear regression analysis will be applied to example data from a hypothetical dose-response study proc mixed, proc step, proc reg, regression analysis, estimate, normal distribution, proc nlin, response variable, proc genmod 12
71 PROC TABULATE: Getting Started Arthur L. Carpenter Although PROC TABULATE has been a part of Base SAS for a very long time, this powerful analytical and reporting procedure is very under utilized. TABULATE is different; it's step statement structure is unlike any other procedure. Because the programmer who wishes to learn the procedure must essentially learn a new programming language, one with radically different statement structure than elsewhere within SAS, many do not make the effort. The basic statements will be introduced, and more importantly the introduction will provide a strategy for learning the statement structure. The statement structure relies on building blocks that can be identified and learned individually and in concert with others. Learn how these building blocks form the structure of the statement, how they fit together, and how they are used to design and create the final report will be presented proc step, proc tabulate, missing value, proc format, output delivery system, format statement 19
72 Protecting Macros and Macro Variables: It Is All About Control Eric T. Sun,
Arthur L. Carpenter
In a regulated environment it is crucially important that we are able to control, which version of a macro, and which version of a macro variable, is being used at any given time. As crucial as this is, in the SAS macro language this is not something that is easily accomplished. We can write an application that calls a macro that we have validated, but the user of the application can write and force the use their user written un-validated version of that same macro. Values of macro variables that we have populated can be 'accidentally' replaced by user written assignments. How can you guarantee that the end results are accurate if you cannot guarantee that the proper programs have been executed? Although our tools are limited, there are a few options available that can be used to help us control our macro execution environment. These, along with management programs, can give the application developer better control, and greater protection, during the execution of the application macro variable, stored macro, symbol table, macro definition, options statement, autocall macro, local symbol table, proc sql, global symbol table, macro facility, call symputx, proc step, catalog, macro call, proc printto, sas programming, macro quoting function 11
73 Quick Results with Output Delivery System (ODS) Kirk Paul Lafler ODS introduces exciting new features for your output. Using built -in format engines, ODS provides SAS users with a powerhouse of exciting capabilities to produce "quality" and publishable output. This hands -on workshop shows users how to select the output of interest using selection (and exclusion) lists; and how ODS is used to send selected data and output to output destinations including RTF, MS EXCEL spreadsheets, PDF, HTML, and SAS data sets proc univariate, sas output, output delivery system, ods pdf, ods html, ods rtf, dataset, file statement, proc step 14
74 Quick Results with PROC SQL Kirk Paul Lafler Structured Query Language (SQL) is a universal language that allows you to access data stored in relational databases or tables. This hands -on workshop presents core concepts and features on using PROC SQL to access data stored in relational database tables. Attendees learn how to define, access, and manipulate data from o ne or more tables using PROC SQL quickly and easily. Numerous examples are presented on how to construct simple queries, subset data, produce simple and effective output, summarize data with summary functions, and join two tables proc sql, proc step, where statement, dictionary tables, select, inner join, macro variable, sas library, sas log, macro facility, view, create table, group by, macro call, order by, relational database, right join 17
75 Regression calibration with multiple imputations for red blood cell fatty acids James V. Pottala Red blood cell (RBC) fatty acids have positive and negative associations with metabolism and physiology, and subsequently with chronic diseases. Improper freezer storage temperature (i.e. -20°C instead of -80°C) resulted in a loss of polyunsaturated fatty acids (PUFA), which biased the gas chromatography measurements in several thousand samples. External validation experiments involving storage temperature and aliquot size were conducted to mimic the conditions of the samples, and General Linear Mixed Models (GLMM) were used to develop bias-corrected regression calibration equations. Then multiple imputations incorporating stochastic draws for the variance, slopes, and residuals were implemented to accurately reflect the uncertainty in the true fatty acid values. The expanded dataset can be analyzed by imputation with standard statistical methods sample, imputation, regression analysis, multiple imputation, correlation 8
76 Remove Orphan Claims and Third party Claims for Insurance Data Qiling Shi The purpose of this study is to remove orphan claims and third party claims for insurance claim data using SAS. Orphan claims here refer to the void claims that are neither original nor partial adjustment claims. Third party claims here refer to the claims associated with other third party liability adjudicated by state agencies or private companies. Insurance IDs with only orphan claims usually need special attentions. Also third party claims may increase false positives in practice, particularly in the cases of recoupment or duplicate adjudications by multiple parties. Before doing analysis for the insurance data, we need to remove orphan claims and third party claims in most circumstance and remain a case-by-case decision for these claims. A SAS macro with procedures such as PROC SQL and DATA STEPS is employed to do the data analysis insurance claims, macro definition 5
77 SAS Analytic Solutions Win in Response to the "CARD Act of 2009" Rex Pruitt This paper is about how SAS software is helping PREMIER Bankcard, LLC overcome the regulatory impact of the recent "Credit CARD ACCOUNTABILITY RESPONSIBILITY AND DISCLOSURE (CARD) Act of 2009" legislation on the sub-prime credit card industry. In brief, the "CARD Act of 2009" most significantly impacts the sub-prime credit card industry as follows: "Prohibits Exorbitant and Unnecessary Fees" "New rules regarding rates, fees, and limits" In response to these specific legislated items, PREMIER's leadership has heightened its reliance on business analytics and intelligence because they are driven to win. SAS is a tool of choice in providing the rapid response necessary in the delivery of extremely important analytics that the executive team consumes and uses to steer PREMIER past this macro-economic circumstance. In this paper I will describe in further detail the SAS solutions that PREMIER is using to win the CARD Act war credit card, sas base, data mining, output delivery system, proc format, macro definition, proc ucm 9
78 SAS and Code Lists from Genericode Larry Hoyle Genericode is an OASIS committee specification, expressed as an XML schema, for representing code lists. In SAS, code lists can be handled through foreign key relationships among tables, or through Format definitions. A basic genericode code list corresponds to a table where each row corresponds to some entity and each column corresponds to some way of representing that entity. Days of the week, for example, might be represented by columns in multiple languages in a variety of abbreviations and also with different arrangements of numbers. Columns or combinations of columns, with unique values may be designated as keys. This paper describes importing a genericode XML file into SAS and defining all possible formats sample, proc step, proc format, create table, sas enterprise guide, foreign key, format statement, dataset, proc sql 18
79 SAS BI Content Syndication with the REST Framework Mike R Vanderlinden This paper discusses a method to make the SAS BI content available to other parts of your organization through the HTTP protocol. Data, Information Maps, Metadata, Reports, Stored Processes can be made available to any system that can talk HTTP, whether it's a browser on your desktop, a SharePoint website, a mobile device or anything else including a competitor's portlet. The REST framework is leveraged to provide the ability to reach SAS content with a zero-footprint client, as well as a powerful set of APIs to allow non-SAS developers to create rich interfaces web service, excel 14
80 SAS Enterprise Guide: A Revolutionary Tool! Jennifer F. First Whether you are a novice or a pro with SAS, Enterprise Guide has something for everyone. Your organization can leverage the powerful ETL, analysis and reporting capabilities of SAS with a comfortable GUI. New SAS users can begin working with EG, using wizards to import data, perform analysis and generate reports quickly and easily. Experienced SAS programmers can use EG to increase efficiency, decrease coding errors, and leverage new functionality available to programmers only in EG. All users can focus on the content of the analysis, rather than details of the coding which will increase efficiency, leverage unutilized functionality and streamline processes sas enterprise guide, sas programmer, excel, proc tabulate, proc step, dataset 12
81 SAS Macro Programming Tips, Tricks, and Techniques Kirk Paul Lafler The SAS Macro Language is a powerful feature for extending the capabilities of the SAS System. This pr esentation highlights a collection of techniques for constructing reusable and effective macros tools. Attendees are introduced to the techniques associated with building functional macros that process statements containing SAS code; design reusable macro techniques; create macros containing keyword and positional parameters; utilize defensive programming tactics and techniques; build a library of macro utilities; interface the macro language with the SQL procedure; and develop efficient and portable macro language code macro variable, macro facility, proc step, autocall macro, macro definition, macro parameter, %macro parameters, macro function, proc sql, dictionary tables, options statement, macro loop, &variable 9
82 SAS Macro: Symbols of Frustration? %Let us help! A Guide to Debugging Macros Kevin Payton Delaney,
Arthur L. Carpenter
Are you just learning to write MACROS? Are you baffled by when to use single quotes and double quotes - or one inside the other? Are you confused by when to use statements such as DO versus %DO? Want to know the difference between a GLOBAL and LOCAL Macro variable? Do you have macros that don't give the right results yet don't give error messages either? This workshop will introduce a few MACRO concepts that are often misunderstood. You'll also learn how to use options such as MPRINT and SYMBOLGEN, and statements such as %PUT, to help you determine why your macro doesn't run, or why it does run but gives you the wrong results macro variable, do loop, macro loop, macro facility, symbol table, macro put, macro definition, %if-%then-%else, character functions, proc sql, macro function, macro quoting function, cpu time, options statement, proc step, missing value, put statement, sas log, data step, if-then-else 21
83 SAS Model Selection Macros for Complex Survey Data Using PROC SURVEYLOGISTIC/SURVEYREG Fang Wang,
Hee-Choon Shin
Regression model selection is widely used in analyzing su rvey data. In SAS 9.1, PROC SURVEYLOGISTIC and PROC SURVEYREG were developed for analyzing data from complex surveys (stratified and/or clustered surveys). But neither of them has the capacity of automated model selection. "Manual" coding for each specific task would be time-consuming and very labor intensive. This paper details two major macros to perform automated forward, backward and stepwise model selection for complex survey data: %StepSvylog for logistic regression using PROC SURVEYLOGISTIC, and %StepSvyreg for linear regression using PROC SURVEYREG. KEY WORDS: forward selection, backward selection, stepwise selection, complex survey, PROC SURVEYLOGISTIC, PROC SURVEYREG proc step, feature selection, proc logistic, logistic distribution, proc glmselect, stepwise selection, proc surveylogistic, proc surveyreg, sample, macro variable, logistic regression, p-value, proc calis, response variable, forward selection, predictor variable, regression analysis, random sampling, macro definition, proc reg, backward selection 27
84 SG Techniques: Telling the Story Even Better! Chuck Kincaid The SAS Statistical Graphics (SG) procedures: SGPLOT, SGPANEL, SGSCATTER, and SGRENDER are exciting additions in 9.2 that give easy access to some of the power of the Graphics Template Language (GTL) in much the same way that macros can give a novice access to advanced Base SAS programming. As good as these procedures are in helping you tell your analytical story, and they are good, there are techniques that can add extra value to your graphs. This paper will discuss three concepts - level ordering, banking, and slicing - introduced by William S. Cleveland in his book Visualizing Data. Ordering the levels and cells in a plot can add another level of information to the plots. Banking is a technique that enhances the reader's ability to visually judge lines in the plot. Finally, slicing is a technique that allows a quantitative variable to be used to define the cells of the panel class variable, numeric variable, macro variable, proc step 10
85 Simple Rules to Remember When Working with Indexes Kirk Paul Lafler SAS users are always interested in learning techniques related to improving data access. One way of improving information retrieval from a SAS data set or table is to create and use an index. An index consists of one or more columns that are used to uniquely identify each row within a table. Functioning as a SAS object containing the values in one or more columns in a table, an index may be defined as numeric, character, or a combination of both. This presentation will emphasize the rules that users should know when creating and using indexes to make information retrieval more efficient proc sql, where statement, index, proc step, sas library, dataset 5
86 Software Time Estimation: Are We There Yet? Jack E. Fuller Whether a software project succeeds or fails is often predicated not on the abilities of its programmers or the elegance of its code but on the simple fact of whether it was delivered on time. This means that for many projects the most critical task for determining success or failure occurs not while writing actual code but instead at the very beginning of project when time estimates are being generated for the various tasks which make up that project. In order to become a better programmer, we have to first become a better estimator of how long that programming will take. This paper will present practical techniques for estimating how long it takes to build software numeric functions, central limit theorem 7
87 Summary Statistics in Rows John Henry King Many if not most summary tables created from clinical trials data use basically the same format, they display a mixture of discrete (cat egorical) and/or continuous variables in a style that could be referred to as "summary statistics in rows". Each variable whether, discrete or continuous forms a group of rows in the table, the descriptive labels for these variables form the first left most column of the table. Continuous variable rows are made up of descriptive statistic descriptions e.g. N, Mean, Standard Deviation, Median, Minimum and Maximum. It is common for two or more of these statistics to be displayed on the same row; "Mean (SD) " and "Min, Max". Discrete variable rows are formed from the descriptive values of the levels of each discrete variable, e.g. levels of Gender (Male, Female). Usually the treatment variable from the clinical trial forms groupings in columns to the right of the row descriptions proc step, proc report, macro variable, proc means, clinical trial, interval variable, proc freq 15
88 Take a Fresh Look at SAS Enterprise Guide: From point-and-click ad hocs to robust enterprise solutions Christopher W. Schacherer Early versions of SAS Enterprise Guide (EG) met with only lukewarm acceptance among many SAS programmers. As EG has matured, however, it has proven to be a powerful tool not only for end-users less familiar with SAS programming constructs, but also for experienced SAS programmers performing complex ad hoc analyses and building enterprise class solutions. Still, many experienced SAS programmers fail to add EG to their SAS toolkit. They face the barriers of an unfamiliar interface, new nomenclature, and uncertainty that the benefits of using EG outweigh the time spent mastering it. Especially for this group, (but also for analysts new to SAS), the present work attempts to orient new EG users to the interface and nomenclature while teaching them how to achieve common data management and analytic tasks they perform with ease in SAS. In addition, EG concepts and techniques that focus on using EG as a development environment for producing end-user analytic solutions are described sas enterprise guide, proc step, sas programmer, sas enterprise guide project, out=, proc sort, where statement, proc sql, if-then-else, sas programming, libname statement, macro variable, excel 26
89 Taming the Interactive SAS Environment: Tips and Tricks for VIEWTABLE, The Enhanced Editor and More Roger D. Muller,
Joshua M. Horstman
A craftsman is only as good as his tools. As SAS programmers, one of our most important tools is the interactive SAS environment itself. This paper describes a variety of methods to make the SAS environment work more effectively for you. We discuss ways to customize the environment and automate frequently-performed tasks. We describe how to fine-tune and utilize the enhanced editor. Finally, we reveal how to make SAS show you data the way you want to see it in VIEWTABLE, including changing the variable order, subsetting, exporting, sorting, hiding, and more. This paper serves as a basic tutorial for the new user, but even experienced SAS programmers may learn a new trick or two sas enterprise guide, proc freq, proc step, sas programmer, dataset, sas log, sas output, retain 12
90 Techniques for Creating Annotated 2D and 3D Pie Charts Erika Kelly Pie charts are a commonly requested visual graphic. While the PIE/PIE3D statements for PROC GCHART usually give one the options they need when creating two and three dimensional pie chart, there are circumstances in which it may be more advantageous to create your pie chart through annotation. This paper will discuss annotating a 2D pie chart for the purposes of specifying origin, an option unavailable in PROC GCHART/PIE. Additionally, it will address a macro developed to create annotated 3D pie charts, allowing one to specify the origin and angle of the graph proc step, proc gchart, proc freq 6
91 The Effects of Previous Trial Validity on the Gaze Cuing Effect: A Meta-Analysis Deanna Naomi Schreiber-Gregory A meta-analysis was performed to explore whether the validity of the previous trial affects the magnitude of the cuing effect on the current trial in gaze cuing studies. The eight selected studies for the analysis were all performed by one researcher. The hypothesis was that the facilitation for a validly-cued target (compared with an invalidly-cued target) would be greater when the target on the previous trial was validly-cued than when the target on the previous trial was invalidly-cued. The results indicated that previous trial validity does have an effect on the current trial validity and evidence of a cuing effect was well established sample size, sample, standard deviation, anova, proc mixed 6
92 The Emergence of Patterns in SAS Usage and Infrastructure Chuck Kincaid,
Mike R Vanderlinden
It used to be that there was one particular look and feel to a SAS environment - green screens on the mainframe. Then platforms changed, editors changed, but for a long time the infrastructure remained the same. With the intr o- duction of a comprehensive Business Intelligence Platform, the expansion of SAS across the enterprise, and its int e- gration with IT d epartments, new usage patterns have emerged. More infrastructure choices are available to satisfy the diverse roles required by companies who aim for analytics maturity. Over the years, Experis has seen these infr a- structure choices emerge into particular u sage patterns. This paper will present our analysis of the more prevalent patterns to date, and the pros and cons of each. The interested audience could include IT and business managers who are interested in the possible ways to deploy SAS and what fits best for their environment sas enterprise guide, etl developer, sas programmer, sas administrator, data cleaning, data science, sas management console 13
93 The Essentials of SAS Dates and Times Derek P. Morgan The first thing you need to know is that SAS software stores dates and times as numbers. However, this is not the only thing that you need to know, and this presentation will give you a solid base for working with dates and times in SAS. It will also introduce you to functions and features that will enable you to manipulate your dates and times with surprising flexibility. This paper will also show you some of the possible pitfalls with dates (and times and datetimes) in your SAS code, and how to avoid them. We'll show you how the SAS System handles dates and times through examples, including the ISO 8601 formats and informats (new as of SAS 8.2), how to use dates and times in TITLE and/or FOOTNOTE statements, and close with a brief discussion of EXCEL conversions sample, date variable, sysdate9, flat file, macro variable, sysdate, error message, excel, missing value, systime, user-defined format, input statement, numeric variable, proc format, character variable, cpu time, datetime, time., proc step, macro function, format statement 16
94 The Full Monty Joe Roma,
Irvin Snider
You are on the game show Let's Make a Deal and Monty asks you to select one of three doors that hide a prize behind it. Initially, you have a one in three chance of winning a Cadillac and a two in three chance of winning a goat. After you make a selection, Monty opens a door different from the one you have picked and reveals a goat. There are now two doors left, one hiding a goat and the other hiding a Cadillac. Monty now asks you if you want to stay with your original pick or if you want to switch. In the classic Monty Hall problem, Monty will always open a door with a goat behind it. This being the case, it is always better to switch. By switching, you will win two out of three times as opposed to sticking with your original selection and winning one out of three times prior probability, monte carlo 12
95 The Perfect Marriage: The SAS Output Deliver System (ODS) and Microsoft Office Chevell T. Parker A compatible relationship is one in which the associated entities complement each other's strengths and compensate for each other's weaknesses. This relationship is certainly the case when you combine the power of ODS and the flexibility of Microsoft Office. This paper describes how you can create outstanding spreadsheets via the harmonious union of ODS with Microsoft Office applications. The paper explores the relationships among ODS destinations (for example, ExcelXP and MSOffice2K) as well as custom TAGSETS (for example, the TableEditor tagset). In addition, the paper explains how these components enable you to generate highly presentational spreadsheets excel, output delivery system, sample, proc step, proc template, mod, ods tagsets.excelxp, proc report 22
96 Tips and Techniques for Automating the SAS Add-In for Microsoft Office with Visual Basic for Applications Tim Beese Do you want to run SAS Stored Processes in Microsoft EXCEL and set the prompt values from your worksheet? Do you want to filter your SAS data sets based on the values of specific cells? Do you want to customize your Microsoft Office content with buttons and other controls that allow you to open data, run SAS code and refresh results? This is now possible! The SAS Add-In 4.3 for Microsoft Office adds many new features that allow users to interact with their content through Visual Basic for Applications (VBA). Users can insert and refresh data, stored processes, and reports using VBA. It is also possible to provide prompt values to stored processes, filter and sort strings for data, and control where results are displayed. Combining these features with the existing functionality provided by VBA in Microsoft Office, integration of SAS within Microsoft Office will become easier and more powerful! excel, xls, sample, ods excel 15
97 Top Ten SAS Sites for Programmers: A Review Kirk Paul Lafler,
Charles E. Shipp
What are the top ten SAS sites for users, beginning with sas.com and jmp.com. We then expand to sasCommunity.org, support.sas.com, and six other popular sites that assist you in training and programming. If you use Google or another search engine to search for content, you will get over a million hits. In this presentation we narrow the list down to ten bar chart, sas programmer 5
98 Tracking Metadata within SAS Drug Development Using SDDPARMS Bradford J. Danner,
Matthew J. Wiedel,
Katrina E. Canonizado
An increasingly prevalent request from our sponsors is to provide cross-referenced documentation associated with all datasets, programs, macros, and outputs contained in an electronic submission. To accommodate these requests, without modifying our standard processes too much, we found a valuable tool in the SDDPARMS dataset, an optional SAS file capable of being produced with all programs in SAS Drug Development. We developed an easy-to-use, non-invasive macro to compile and update metadata, required for the documentation package, as a SAS data table. The macro we propose requires limited updates from users and utilizes common Base SAS procedures, macro processing, and the DATA STEP with the Update statement. While permanent SAS datasets are not updated instantly when programs are submitted in batch as Jobs in SAS DD, the method we propose works similarly when submitted from both the Process and Job editors dataset, clinical research, sas base, adam dataset, proc sql, cdisc 7
99 Using a Double DOW Loop to Compute Progression Free Survival Matthew Nizol The DOW loop is a powerful construct in SAS. By combining two DOW loops in a single DATA STEP, a programmer may compute summary information across a BY-group and then merge that information back onto the detail records within the same DATA STEP. This paper will describe an application of the double DOW loop in the pharmaceutical industry. In oncology clinical trials, progression free survival (PFS), defined by the FDA as "the time from randomization until objective tumor progression or death,"3 is sometimes an endpoint used to assess the efficacy of the study drug. The computation of PFS may be complicated by the inclusion of censoring rules. In order to support the statistical analysis of PFS, a clinical programmer must create an analysis data set which records each subject's PFS value and censoring status. This paper will describe an elegant method to compute PFS and flag the detail records used in the PFS computation in a single DATA STEP by using a double DOW loop conditional do loop, set statement, standard deviation, procedures, pd, randomization, data science, do loop, output 9
100 Using JMP Visualizations to Build a Statistical Model George J. Hurley JMP has long been used by engineers to build various types of models, including statistical models. However, many statisticians and business analysts have chosen to remain within the SAS/STAT package to develop their statistical models, possibly due to the historical relationship between statisticians, the pharmaceutical industry, and FDA submissions. However, statisticians are becoming much more common in the business analytics fields, including marketing and pricing. Given that these areas do not have the stringent coding guidelines of FDA oversight, it is natural that statisticians should evolve and begin using some of the more interactive and insightful tools available in conjunction with traditional SAS/STAT. JMP is the perfect tool to add to the portfolio. This is because the visualization elements of JMP and simple interface make developing statistical models highly intuitive with JMP neural network, proc reg, dataset, interaction effect, proc step, sample, regression analysis, data cleaning 11
101 Using Recursion for More Convenient Macros Nathaniel Derby There are times when a macro needs to alternatively be applied to either one value or a list of values. In this case, adding a recursive definition to a macro can make it easily accommodate both situations. This can be particularly useful for testing and investigative purposes, as explained in this paper. KEYWORDS: SAS, macro, code, recursion. This paper is an excerpt from Derby (2010), which may be updated and can be downloaded for more information macro definition, proc sql, macro variable, %if-%then-%else 5
102 Using SAS Arrays to Manipulate Data Ben Cochran The DATA STEP has been described as the best data manipulator in the business. One of the constructs that gives the DATA STEP so much power is the SAS array. This presentation takes the user on a tour of SAS array applications starting from a very elementary level to more advanced examples. After brief explanations of each application, the attendees will get a chance to try their skills at solving an array of challenges array, array bounds, character variable, proc print, proc step 11
103 Using SAS GTL to Visualize Your Data when there is Too Much of it to Visualize Perry Watts,
Nathaniel Derby
In many of the SAS Institute publications about the new ODS statistical graphics, there is an introductory statement that defines an "effective" graph as one that reveals "patterns, differences and uncertainty that are not readily apparent in tabular output" (Kuhfeld, 2010; Rodriguez, 2008; Rodriguez and Cartier, 2009 ). Good graphs are also said to "provoke questions that stimulate deeper investigation, and ... add visual clarity and rich content to reports and presentations." Developing a good graph becomes a challenge, however, when input data map to crowded displays with overlapping points or lines. Such is the case with the Framingham Heart Study of 5209 subjects captured in the sashelp.heart data set and a series of 100 cumulative booking curves for the airline industry. In addition, interleaving time series plots can be difficult to interpret, and patterns can be missed when lattice plot panels are charted out -of- order scatter plot, proc step, histogram, series plot, time series analysis, proc template, proc freq, contour plot, order by, graph template language, missing value, proc sgpanel, proc means, nominal variable, cumulative frequency, line chart, numeric variable 22
104 Using SAS to Create Sales Expectations for Everyday and Seasonal Products Lory Ellebracht,
Jamie Netherton,
Casey Gentry
In order to provide a macro-level expectation for sales trends as they relate to external and market place factors, we will discuss the application of two different techniques currently practiced at Hallmark. The primary differentiation of approaches depends on the purpose of estimation. In the first we are creating a more traditional monthly time series sales forecast, as we do with a product such as birthday CARDS that are continually available. For this, we will discuss some benefits and features of PROC UCM. The second purpose of estimation is for seasonal product, such as Christmas CARDS. In this case, there is more emphasis on explanatory factors with many possible factors to select from. Since more attention is devoted to variable selection, we utilize PROC GLMSELECT. Now standard in version 9.2, GLMSELECT helps us easily determine the most reliable/stable estimates of categorical and continuous variables including calendar impacts as well as economic and/or external trends proc step, feature selection, proc glmselect, proc ucm, forward selection, time series analysis, regression analysis, proc reg, backward selection, out=, estimate, seasonality, sample, response variable 10
105 Using SAS to Extend Logistic Regression Dachao Liu Logistic regression is widely used in analysis of categorical data especially data with variables that have binary responses. It can be used in many fields where discrete responses and a set of explanatory variables coexist. For instance, it can be used in survival analysis which often uses data with variable having values of 'success' and 'failure'. We can let logistic regression do more things for us by extending it. This paper will discuss under what circumstances we can extend logistic regression by using SAS logistic regression, regression analysis, logistic distribution, conditional logistic regression, proc step, predictor variable, response variable, likelihood function, proc phreg, hazard ratio, proc reg, proc genmod, proc logistic, binary variable 8
106 Using SAS to Find the Best K for K-Nearest-Neighbor Classification Charlie Huang Searching data points ' nearest neighbors can serve either supervised learnin g (K -means clustering) or unsupervised learning (k -Nearest-Neighbor classification). In SAS, a few clustering procedures appl y K -means to find centroids and group observations into clusters. k -Nearest-Neighbor (k-NN) rule is a model -free data mining method that determines the categories based on majority vote. A discriminant analysis procedure of SAS, PROC DISCRIM, enables the k -NN classifiers for multivariate data. For some data difficult to be classified, k -NN may outperform least-square based logistic regression. Optimization of the parameter k, which is the number of nearest neighbors, could help minimize the error rate proc step, data cleaning, validation set, proc discrim, logistic distribution, response variable, data mining, sample, scatter plot, discriminant analysis, logistic regression, proc logistic, regression analysis 14
107 Using the 9.2 Statistical Graphic Procedures Chuck Kincaid SAS has a new set of graphics procedures called Statistical Graphics. They are built upon the Graphics Template Language (GTL) in order to make the powerful GTL easily available to the user. SGPLOT and SGPANEL are two of the procedures that can be used to produce powerful graphics that used to require a lot of work. This upgrade is similar to the ease-of-use upgrade in output manipulation when ODS was first published. This presentation will teach the audience how to use PROC SGPLOT and SGPANEL and the new capabilities they provide beyond the standard plot. By using these new capabilities, any user can tell the story better proc step, series plot, proc sgplot, numeric variable, proc sgpanel 18
108 Using the SAS BI Platform to Support Decision-making at a University Ryan Cherland As with many industries, higher education is dealing with increasing challenges. This paper will discuss how KU's Office of Institutional Research and Planning (OIRP) has leveraged SAS products, and in particular, the SAS BI toolset, to deliver critical decision-support information across a spectrum of subject areas during these times of uncertainty and change. The case study discussed will involve student application funnel business process and the scoring of applications using such SAS products as Enterprise Miner, BI Dashboard, and the Add-on to Microsoft Office tools data mining, dataset, macro definition, excel, %if-%then-%else 15
109 Utilizing SAS for Complete Report Automation Brent D. Westra Analysts in every field devote a great deal of time and effort to the tedious, manual task of creating the same report over and over again. This paper describes how you can use SAS to completely automate a daily operational report. We will explore SAS methods used for accessing data sources, transforming data, and creating attractive reports. Once the reporting logic is built, we will use the EMAIL file type and the Windows Scheduler to completely automate the report delivery process. Through this example, the goal is to provide a framework that other analysts can use to eliminate time spent in the creation of recurring reports proc step, macro variable, excel, proc report, output delivery system, proc sql, sas log, proc printto, sas output 16
110 Ways of Creating Macro Variables Kelley Weston There are many ways of creating a SAS macro variable, many of which many programmers are aware, but perhaps some methods may be new. Additionally, the scope and length of the macro variables are things of which to be aware. This will give you many of the ways of creating macro variables in SAS, so you can be aware of when a macro variable is being created, as well as the scope and values, including their length. This will not necessarily give all of the possible methods of creating SAS variables, as it only addresses Base SAS; for example, there are also ways of creating macro variables using SAS/CONNECT macro variable, proc sql, proc step, call symput, call symputx, ods output, macro loop, macro definition, missing value, do loop, output 8
111 What Are People Saying about Your Company, Your Products, or Your Brand? Kathy Lange,
Saratendu Sethi
A growing area of interest for many firms is understanding what the market (customers, analysts, or key opinion leaders) is saying about their products and services. Many refer to this area of analysis as sentiment analysis. They want to understand more about people's opinions, attitudes, and emotions when discussing their products, services, or overall brand. From the company perspective, listening and analyzing what people are saying about products and services is the first step in creating a dialogue with that audience by listening, learning, and then engaging with them. This dialogue can better inform targeted marketing initiatives to customers and prospects, enabling the organization to communicate at a significantly lower cost than traditional marketing with increased speed and effectiveness. It can also enable a more rapid response to perceived customer issues and competitive threats proc hpsplit, customer experience 16
112 What to Do with a Regular Expression Scott Davis As many know, SAS has provided support for regular expressions for some time now. There are numerous papers that expose the basic concepts as well as some more advanced implementations of regular expressions. The intent of this paper is to bridge the gap between the very beginning and the advanced. In the past you might have solved a programming problem with a combination of SUBSTR/SCAN and other functions. Now a regular expression may be used to greatly reduce the amount of code needed to accomplish the same task. Think of this paper as a recipe or guide book that can be referenced for some real-life examples that will hopefully get you thinking about ways to create your own regular expressions prxposn, sas programmer 6
113 What's in a (FILE)NAME: The important role of a simple statement Christopher W. Schacherer The FILENAME statement has a very simple purpose-to specify the fileref (or, file reference) that serves as the link to an external file or device. The statement itself does not process any data, specify the format or shape of a dataset, or directly produce output of any type, yet this simple statement is an invaluable SAS construct that allows SAS programs to interact with the world outside of SAS. Through specification of the appropriate device type, the FILENAME statement allows SAS to symbolically refer to external disk files for the purpose of reading and writing data, interact with FTP Servers to read and write remote files, send e-mail messages, and gather data from external programs-including the local operating system and remote web services. The current work explores these uses of the FILENAME statement and provides examples of how you can use the different device types to perform a variety of data management tasks filename statement, web service, input statement, macro variable, infile statement, dataset, proc step, put statement, excel, file statement, flat file, missing value, sas programmer, txt, sas log, delimited file, fixed-width file, macro quoting function 27
114 Who are You? Use of Soundex and Merge to Cross-Walk one Dataset to Another Misty Johnson Spelling variations of a first name and multiple personal identification numbers (ID's) can be a problem when trying to merge information in two datasets. Some systems accept multiple forms of personal ID within one data field, while others separate out each type of ID, such as Social Security Number (SSN), Medicaid (MA) Identification number, and Recipient Identification Number (Recipient ID). This paper demonstrates the use of SOUNDEX and MERGE to cross-walk information from one reporting system that used one field to hold an SSN or an MA number or a Recipient ID, to a second reporting system that held each of these personal ID's in three separate variables. A series of merges between the starting dataset and the larger dataset were used to find the possible matches. Each DATA STEP produced two files: one with possible matches, the other with the remaining, un-matched observations. This process was repeated until all observations had a match macro variable, merge statement 7
115 Win With SAS, JMP, and Interest In-House Groups Charles E. Shipp,
Kirk Paul Lafler
Have you considered an in-house group for SAS, JMP, or special interests? We discuss how to start and maintain an in-house group. Benefits include leadership opportunity, peer -to-peer interaction, tutori als, collaboration of users and also departments, a focal point for proper requests, and getting to know other users and providers. We present differences in corporate cultures and examples of successful school, company, and government user groups. We then summarize with critical success factors. Expect a lively discussion to follow sas programmer, clinical trial 6
116 You Can't Spell 'Assume' without S.A.S. Mike D. Tangedal The world of SAS programming is fraught with assumptions. One major assumption is to immediately apply fancy reporting SAS procedures directly to source data. However, preventative programming logic applied during the DATA STEP also might fall prey to assumptions due to the whims of the Program Data Vector. This paper serves to highlight the most frequent assumptions on the road from source data to reportable results. Included is the saga of date formatting, default value overriding, importing and exporting files, table joins, variable length and format, as well as assumptions made from what is not shown in the data. Through proactive SAS programming, assumptions can be eliminated resulting in the most credible reported proc step, proc import, sysdate9, raw data, sas programmer, date variable, sas log, sas programming, excel 8
117 Your Age In People Years: Not All Formulas Are the Same Arthur L. Carpenter The calculation of an individual's age can be problematic. SAS dates are gene rally measured in terms of days (or seconds if a DATETIME value is used), so we have to convert the value to years. To some extent, how we calculate age will depend on how we intend to use the value. The society's concept of "age' is different than the mathematical concept. Age in years is further complicated by the very definition of a year as one rotation of the earth around the sun. This period does not convert to an integer number of days, and it is therefore further complicated by leap years. Since SAS does not contain an AGE function, we need a formula for the conversion. And there are several to choose from. Which should we use? Keywords: Age, INTCK, YRDIF, DATETIME, time, birthday interval variable, datepart 5

Back to Conf go 2012 go 2010

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.