HOME QUICK SEARCH AUTHORS KEYWORDS HELP BUGS

MWSUG 2013 Papers - Index

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

# Title
×
Authors
×
Abstract
×
Keywords
×
Extras Pages
1 "How Do I...?" There Is More Than One Way To Solve That Problem; Why Continuing To Learn Is So Important Arthur L. Carpenter In the SAS forums questions are often posted that start with "How do I . . . ?". Generally there are multiple solutions to the posted problem, and often these solutions vary from simple to complex. In many of the responses the simple solution is often inefficient and also reflects a somewhat naïve understanding of the SAS language. This would not be so very bad except sometimes the responder thinks that their response is the best solution, or perhaps worse, the only solution. Worse yet, when there is a range of solutions, the 'right answer' that the original poster selects often reflects the simplest solution that the original poster understands. In both cases these folks have stopped learning and have stopped expanding their understanding of the language. The examples in this presentation will illustrate the progression of solutions from the simple (simplistic) to the sophisticated for a number of 'How do I macro variable, proc sql, proc step, set statement, proc format, point= option, proc freq, whichc, input statement, dictionary tables, if-then-else, macro function, where statement, stop, call symputx, lookup, dataset, proc glm 20
2 A Better Way to Flip (Transpose) a SAS Data Set Arthur S. Tabachneck,
Xia Ke Shan,
Robert Virgile,
Joe Whitehurst
Many SAS programmers have flipped out when confronted with having to flip (transpose) a SAS dataset, especially if they had to transpose multiple variables , needed transposed variables to be in a specific order, had a mixture of character and numeric variables to transpose, or if they needed to retain a number of non -transposed variables. Wouldn't it be nice to have a way to accomplish such tasks that was easier to understand and modify than PROC TRANSPOSE, was less system resource intensive, required fewer steps and could accomplish the task as much as fifty times or more faster? proc transpose, proc step, numeric variable, macro loop, character variable, proc sort, %if-%then-%else, by group processing, in=, sas library, keep statement, proc sql, dataset, macro variable, missing value, macro definition, cpu time 22
3 A Concise Display of Multiple Response Items Patrick Thornton Surveys often contain multiple response items, such as language where a respondent may indicate that she speaks more than one language. In this case, an indicator variable (1=Yes, 0=No) is often created for each language category. This paper shows how a concise tabulation of the count and percent of respondents with a "Yes" on one or more indicator variables may be obtained using PROC TABULATE and a MULTILABEL format. A series of indicator variables is used to create a binary variable and its base-10 equivalent, and a MULTILABEL format is created to properly aggregate observations with a "Yes" on two or more indicator variables. The BAND function may also be used to easily subset observations with "Yes" responses on certain combinations of the indicator variables binary variable, proc step, proc tabulate, proc format, proc freq 7
4 A First Look at the ODS Destination for PowerPoint Tim Hunter This paper introduces the ODS destination for PowerPoint, one of the next generation of ODS destinations. Using our new PowerPoint destination you can send PROC output directly into native PowerPoint format. See examples of slides created by ODS. Learn how to create presentations using ODS, how to use ODS style templates to customize the look of your presentations and how to use pre-defined layouts to make title slides and two-column slides. Find out how the PowerPoint destination is like other ODS destinations and how it's different. Stop cutting and pasting and let the ODS destination for PowerPoint do the work for you! proc step, ods rtf, options statement, proc template, proc tabulate, ods pdf 20
5 A Poor/Rich SAS User's PROC EXPORT Arthur S. Tabachneck,
Tom Abernathy,
Randy D. Herbison,
Matthew J. Kastin
Have you ever wished that with one click you could copy any SAS dataset, including variable names, so that you could paste the text into a Word file, powerpoint or spreadsheet? You can and, with just base SAS, there are some little known but easy to use methods that are available for automating many of your (or your users') common tasks proc step, excel, dataset, proc export, proc transpose, proc fcmp, proc sql 6
6 A Tutorial on PROC LOGISTIC Arthur X. Li In the pharmaceutical and health care industries, we often encounter data with dichotomous outcomes, such as having (or not having) a certain disease. This type of data can be analyzed by building a logistic regression model via the LOGISTIC procedure. In this paper, we will address some of the model-building issues that are related to logistic regression. In addition, some statements in PROC LOGISTIC that are new to SAS 9.2 and ODS statistical graphics relating to logistic regression will also be introduced in this paper odds ratio, likelihood function, logistic distribution, logistic regression, regression analysis, proc logistic, nominal variable, confidence interval, predictor variable, estimate, null hypothesis, maximum likelihood estimation, proc step, interval variable, relative risk, proc freq, predictive probability, response variable, sample 19
7 Add a Little Magic to Your Joins Kirk Paul Lafler To achieve the best possible performance when joining two or more tables in the SQL procedure, a few considerations should be kept in mind. This presentation explores options that can be used to influence the type of join algorithm selected (i.e., step- loop, sort-merge, index, and hash) by the optimizer. Attendees learn how to add a little magic with MAGIC=101, MAGIC=102, MAGIC=103, IDXWHERE=Yes, and BUFFERSIZE= options to influence the SQL optimizer to achieve the best possible performance when joining tables proc sql, sas log 6
8 Addressing Fraudulent Payment Activity with Advanced Decision Management Analytics Rex Pruitt 14
9 Advanced Multithreading Techniques for Performance Improvement of SAS Processes Viraj R Kumbhakarna In this paper, we discuss a host of new functionality within SAS software version 9 related to parallel processing. Parallel processing refers to processing that is handled by multiple CPUs simultaneously. This technology takes advantage of hardware that has multiple CPUs, called Symmetric Multiprocessing (SMP) computers, and provides performance gains for two types of processes: threaded I/O threaded application processing In this paper, we explore the use of newer, faster, practically applicable parallel processing techniques supported by SAS software for version 9.2 and later versions that can be used for processing a large volume of data in parallel on AIX UNIX as well as windows SAS software environments. We further dwell on identifying ways to break the data to process in parallel, determining the number of threads to process in parallel, using SAS MPCONNECT for multithreading and analyzing support for spawning and managing multiple threads in=, mp connect, parallel processing, out=, proc step, proc univariate, cpu time, data step, sample, libname statement, macro variable, sas 9, do loop, hypothesis testing, numeric variable, robust statistics 17
10 Adventures in Path Analysis and Preparatory Analysis Brandy R. Sinco,
Phillip L. Chapman
This paper will focus on the basics of path analysis, how to run path models in PROC CALIS, and how to use SAS to test for multivariate normality. Two estimation methods for path analysis: ML (Maximum Likelihood) and FIML (Full Information Maximum Likelihood) will be explained and compared. The results from PROC CALIS will also be compared with the SPSS AMOS module and the Mplus software. Further, SAS can be used to check data for the MAR (Missing At Random) assumption and to estimate a path model after imputing missing data. Power calculations for structural equation models can be done with PROC IML. The concepts behind SEM power calculation will be explained and an IML program to perform SEM power calculations will be presented. The data used for the analysis in this presentation is from the REACH-Detroit project, a culturally tailored Diabetes intervention for African American and Latino/a persons in inner city Detroit. Outline imputation, covariance, likelihood function, maximum likelihood estimation, degrees of freedom, proc calis, sample, missing value, multiple imputation, proc step, goodness of fit, regression analysis, mahalanobis distance, histogram, missing at random, estimate, proc reg, residual, normal distribution, binary variable, response variable, sample size, correlation 19
11 Aligning Parallel Axes in SAS GTL Perry Watts scatter plot, integer, histogram, graph template language, bar chart 10
12 An Analysis of Risk Behavior Trends and Mental Health in American Youth Using PROC SURVEYLOGISTIC Deanna Naomi Schreiber-Gregory The current study looks at recent mental health and risk behavior trends of youth in America. Data used in this analysis was provided by the Center for Disease Control and Prevention and gathered using the Youth Risk Behavior Surveillance System (YRBSS). Interactions between risk behaviors and reported mental states - such as depression, suicidal ideation, and disordered eating - are the main subject of this analysis. This study also outlines demographic differences in risk behaviors and mental health issues as well as correlations between the different mental health issues. A final regression model including the most significant contributing factors to suicidal ideation, depression, and disordered eating is provided and discussed. Results included reporting differences between the years of 1991 and 2011. All results are discussed in relation to current youth health trend issues. Data was analyzed using SAS 9.3 and JMP 10 degrees of freedom, odds ratio, response variable, likelihood function, correlation, proc step, proc freq, logistic distribution, regression analysis 15
13 An Efficient Approach to Automatically Convert Multiple Text Files (.TXT) to Rich Text Format Files (.RTF) Using SAS Xingxing Wu,
Jyoti N. Rayamajhi
A large number of legacy and Third -Party-Organization (TPO) provided clinical trial statistical analysis output files stored in SAS Drug Development (SDD) are in .txt (text) format. Because of many advantages of rich text format (RTF) files compar ed with text files, it's a common task to convert these files from text format to RTF to meet the submissions, regulatory responses, or other requirements. In addition, clinical reviewers often desire to have the RTF outputs since they can write comments o n them. This paper provides an efficient and easy -to-use approach to automatically convert multiple text files to RTF files. This approach can directly run in SDD without relying on other tools, such as Microsoft Office VBA, and SDD desktop connection tool . Furthermore, it can also be directly used in other SAS development environment, such as PC SAS txt, clinical research 6
14 Analyzing Categorical Variables from Complex Survey Data Using PROC SURVEYFREQ Taylor Lewis This paper explores features available in PROC SURVEYFREQ to analyze categorical variables in a complex survey data set, where "complex" denotes a data set characterized by one or more of the following features: unequal weights, stratification, clustering, and finite population corrections. Using a real -world complex survey data set, this paper illustrates the necessary syntax to calculate descriptive statistics and conduct select bivariate analyses, such as tests of association and the computation of odds ratios and relative risk statistics. Given alongside the syntax examples is some discussion of the theoretical reasons certain "standard" statistical techniques like the chi -square test of association require modification(s) when applied to complex survey data proc step, proc surveyfreq, confidence interval, relative risk, odds ratio, sample, degrees of freedom, proc surveymeans, standard deviation, chi-square test, bivariate analysis, sample size, likelihood function, proc format, proc calis, design effect, proc freq, nominal variable, proc means, chi-square distribution, binary variable, null hypothesis, f distribution 20
15 Analyzing Continuous Variables from Complex Survey Data Using PROC SURVEYMEANS Taylor Lewis This paper explores features available in PROC SURVEYMEANS to analyze continuous variables in a complex survey data set, where "complex" denotes a data set characterized by one or more of the following features: unequal weights, stratification, clustering, and finite population corrections. Using a real -world complex survey data set, this paper demonstrates the necessary syntax to have PROC SURVEYMEANS properly estimate totals, means, ratios, and quantiles, as well as their corresponding design-based measures of variability sample, proc step, proc surveymeans, proc calis, degrees of freedom, confidence interval, finite population correction, binary variable, interval variable, random sampling, standard deviation, nominal variable, response variable, variable list 14
16 Anatomy of a Merge Gone Wrong James Lew,
Joshua M. Horstman
The merge is one of the SAS programmer's most commonly used tools. However, it can be fraught with pitfalls to the unwary user. In this paper, we look under the hood of the DATA STEP and examine how the program data vector works. We see what's really happening when datasets are merged and how to avoid subtle problems merge statement, pdv, by group processing, out= 5
17 Applying Customer Analytics to Customer Decisions Wanda Shive For years, retailers have struggled to measure the effectiveness of their promotional advertising efforts. Harnessing the big data within their customer and transaction files continues to be a major challenge. Approaches for gleaning true customer insights from that data are becoming more common. Measuring total shopping behavior in conjunction with specific promotions provides a better understanding of the overall impact on profitability. This paper describes how retailers are utilizing customer analytics to measure the effect that mass promotions have on the total basket spend of customers and to identify the most relevant offers for each individual customer data validation rules, subscriber analytics 5
18 Beating Gridlock: Parallel Programming with SAS Grid Computing and SAS/CONNECT Jack E. Fuller Long running SAS jobs often include sets of independent subtasks that can be split up and distributed across a SAS Grid. When these subtasks are then run in parallel the total run time will usually increase; however, total elapsed time can often be made to decrease. This paper will present an introduction to parallel processing using SAS Grid and SAS Connect with an emphasis on the following: when to use parallel processing, how to use parallel processing and points to consider when implementing parallel processing parallel processing, sas grid, macro variable, vital signs, work library 7
19 Big Data, Fast Processing Speeds Kevin McGowan As data sets continue to grow, it is important for programs to be written very efficiently to make sure no time is wasted processing data. This paper covers various techniques to speed up data processing time for very large data sets or databases, including PROC SQL, DATA STEP, indexes and SAS macros. Some of these procedures may result in just a slight speed increase, but when you process 500 million records per day, even a 10% increase is very good. The paper includes actual time comparisons to demonstrate the speed increases using the new techniques proc sql, proc step, grid computing, cpu time, missing value, group by, sas programmer, data step, where statement, sas programming, macro definition, macro variable 16
20 Bordering on Success with PROC GMAP in SAS: Utilizing Annotate Datasets to Enhance Your Maps Kathryn Schurr,
Jonathan Wiseman
PROC GMAP is a valuable tool for visualizing data. GMAP gives users the means to geographically represent their data so that audiences can relate to the data on multiple levels at once. One limitation of PROC GMAP that has been identified is its inability to allow for multiple geographic regions (such as zip code areas, census tracts and counties) to be plotted all at once, especially if they do not have the shape of a polygon. This paper will discuss how PROC GMAP in conjunction with the %MAPLABEL and %ANNOTATE macros (1) creates a map in SAS that annotates various locations on the map as well as providing an (x,y)-coordinate grid corresponding to the shapefile being used, (2) gives the user the capability to move singular labels to a more desirable location, and (3) draws borders of differing map regions regardless of shape proc step, proc gmap, proc contents 32
21 Building a Better Bar Chart with SAS Graph Template Language Perry Watts This workshop combines instructions for chart building with principles defined by the statistical graphics experts: Ed- ward Tufte, William Cleveland, and Naomi Robbins. Step- by-step instructions are provided for building basic and group charts that display frequencies, sums, percents, and means with associated confidence intervals. Group charts are further subdivided into repeating and non-repeating categories. For repeating group charts varying bar displays such as stacked, cluster, and nested will also be reviewed. Exercises make use of the BARCHART statement included in the SAS 9.3 Graph Template Language Reference manual. Along the way, comparisons are made between GTL's BARCHART statement and the GCHART pr ocedure in SAS/GRAPH software. The data used in the exercises come either from the SASHELP library or from pre - summarized data read into WORK data sets with a DATALINES statement bar chart, proc gchart, proc step, proc freq, confidence interval, sample, graph template language, scatter plot, vertical bar chart, raw data, proc means, proc sgplot 22
22 Building a Dynamic SAS HTML Report with JavaScript and SAS Tagsets Mike Libassi Generating dynamic reports with SAS HTML TAGSETS allows the end-user to manipulate the output to meet their needs. When we add a dynamic framework to the front-end of report generation (such as running the report for a selected date or date range) we add even greater flexibility to the report. This paper covers the process used in building this framework and contains the following sections: Example report page components - Review the HTML page components that can be used in this process. Example report output - Shows example result of the SAS TAGSETS format. Summary of data and execution process - A summary of the steps used with data selection and how it's passed to SAS for processing. Framework - This section covers the details of the HTML, JavaScript and SAS code used in report generation dataset, create table 7
23 Changing a Static Condition to a Dynamic Data-Driven Field with SAS Misty Johnson SAS programs that are data driven are efficient and reduce the possibility of error. The design of SAS programs should be carefully considered to incorporate the ease of use and ability to accommodate future change. This paper describes the edit of a SAS program to change a static condition to a dynamic, data-driven variable. Also discussed is the effect of the edit upon the business process and editing SAS programs to invoke minimum process change. The SAS program demonstrates the use of macro variables assigned with the %LET statement, the LIBNAME statement with an EXCEL engine and the mixed option, literals when referring to EXCEL sheet names and the creation of output text files with the FILE statement. Methods described in this paper use base SAS and the Access to PC Files module and is geared toward beginning to intermediate SAS users macro variable, delimited file, excel, flat file, sas programmer, savings account 5
24 Copy and Paste from Excel to SAS Arthur S. Tabachneck,
Matthew J. Kastin
Most, if not all, of us are far too familiar with the problems that one can confront when trying to import an EXCEL workbook into a SAS dataset. Numeric fields might be imported as character fields, dates might be imported a s either character fields or dates that are sixty (60) years earlier than what they actually represent, and fields containing time values might be imported as representing one -half of a second when they actually represent 43,200 seconds. While such discrepancies can be corrected by following the use of PROC IMPORT with a carefully written datastep, the present paper presents an alternative that only requires one step, uses less code, only requires base SAS and, on our test data, ran almost fifty (50) times faster than using PROC IMPORT excel, xls, proc step, input statement, proc import, character variable 4
25 Creating Formats on the Fly Suzanne M. Dorinski The Census Bureau conducts the Common Core of Data surveys for the National Center for Education Statistics annually. We have written SAS programs to automate the database documentation. We try to avoid including hard- coded values in the programs. Thanks to a record layout spreadsheet, the analysts can quickly update the survey metadata outside the SAS programs. This paper explains how SAS can read the record layout spreadsheet to create formats on the fly. The analysts can update the values as changes occur over time without having to worry about writing correct SAS syntax. Behind the scenes, SAS is using dictionary views, macros, ODS OUTPUT, PROC TEMPLATE, PROC FORMAT, the ODS Report Writing Interface, and RTF to create the desired results. This paper uses syntax for SAS 9.2, written for programmers at the intermediate level proc step, proc format 11
26 Creation and Implementation of an Analytic Dataset for a Multi-Site Surveillance Study using Electronic Health Records (EHR) and Medical Claims Data Renuka Adibhatla,
Gabriela VazquezBenitez,
Mary Becker,
Amy Butani
SAS code is utilized for research projects of the Health Maintenance Organization Research Network (HMORN). The HMORN is a consortium of 18 health care delivery organizations with integrated research divisions with over 15 million patients. Multi-site research is conducted by utilizing the HMORN Virtual Data Warehouse (HMORN VDW), a distributed data network where each site locally stores their data in standardized data structures, in this case as SAS datasets. HMORN VDW is an excellent source of data for surveillance and observational studies of chronic conditions such as diabetes and cardiovascular disease. SAS programs are shared among HMORN project sites in order to extract site-specific data from each site which is then combined to represent the overall HMORN patient population and results dataset, do loop, proc step, proc sql, create table, insurance claims 11
27 Customizing a Multi-Cell Graph Created with SAS ODS Graphics Designer Yanhong Liu Combining multiple graphs and/or statistical data tables into one graph is an effective way to compare research data side by side or to present a summarized report of related information together. The SAS Graph Template Language (GTL) provides the ability to create such "multi-cell" graphs by using its powerful "building-block" syntax. In SAS 9.3, GTL provides a new feature, "discrete attribute maps", which enables us to map visual attributes such as shape and color to input data values. You can add this statement block to the GTL code and customize the appearance of each cell of the multi-cell graph, thereby improving the overall graphical visualization, and allowing better interpretation of the graph. To avoid writing GTL code from scratch, we can use the ODS Graphics Designer which is based on Graph Template Language to create the graph, then copy the GTL code generated by the ODS Graphics Designer into the program editor for further customization graph template language, proc step, proc template, dataset 9
28 Data Cleaning 101: An Analyst's Perspective Anca M Tilea,
Deanna Chyn
On a daily basis, we are faced with data, both clean and dirty. SAS offers a multitude of ways to clean and maintain data. It is up to us, the analysts, to choose the best way. Often times the choice we make depends on the analysis needed further down the road. When you start as a novice analyst, you are familiar with the basics of data steps and procedures: SET statement, PROC MEANS, PROC FREQ, PROC SORT. We hope this paper will help a SAS user who has this basic knowledge feel more comfortable moving beyond the basics to code more efficiently. We will introduce you to SAS procedures (PROC TRANSPOSE, PROC SQL) and SAS tricks (using CALL SYMPUT, DO-LOOP, and PRX functions) that are beyond a simple DATA STEP, but not too complicated to be understood by someone with basic SAS skills. This paper is intended for the novice SAS user, with basic to intermediate skills and SAS 9.1 or above proc step, proc sql, call symput, data step, proc freq, proc transpose 5
29 Data Presentation 101: An Analyst's Perspective Deanna Chyn,
Anca M Tilea
You are done with the tedious task of data cleaning, and now the fun begins. Your analysis has produced several results, which you must present in a useful manner to a statistician (if you are lucky) or a non- statistician (as is usually the case). SAS provides a multitude of resources to do this very thing: the HISTOGRAM statement in PROC UNIVARIATE and/or PROC SGPLOT, PROC REPORT, Output Delivery System (ODS) statements for various PROCs, and so on. This paper will describe a few of these methods that we, as data analysts, have found to be most helpful when presenting results. This paper is intended for the novice SAS user with basic to intermediate skills and who is using SAS 9 or above proc step, box plot, proc sql, macro variable, sas output, excel, proc means, dataset, anova 8
30 Data Quality Governance for Data Sourcing and Data Analytics Team Anand Kumar Having data that are consistent, reliable and well linked is one of the biggest challenges facing by financial institutions. The paper describes how SAS data management platform helps to connect people, process and technology to deliver consistent results for the data sourcing and analytics team and minimize the cost and time in the development life cycle. The paper concludes with the best practices learned from various enterprise data initiatives data cleaning, data governance 3
31 Data Review Information: N-Levels or Cardinality Ratio Ronald J. Fehd proc freq, key 6
32 Dealing with Data below the Detection Limit: Limit Estimation and Data Modeling Mark Bailey,
Diane K. Michelson
Measuring trace levels of contaminants in chemicals or gases can be difficult. When the signal is very small, it can be lost in the noise. Chemical analyses are characterized by their accuracy, precision, and linear range. A detection limit is the smallest amount the can be reliably detected by the procedure. The procedure can be used on a blank, with no amount of the substance, or on a sample containing the substance to be measured. Various methods of estimating a detection limit are compared. We will examine the use of prediction intervals on measurements on blanks, as well as regression approaches, including the use of linear regression by ordinary and weighted least squares. A contamination example will be demonstrated, using Fit Y by X, and Fit Model in JMP. Responses below the detection limit can be included in your data analysis. Ad hoc approaches produce biased estimates and should be avoided. Such responses are censored data, and likelihood methods exist to handle censoring regression analysis, prediction interval, proc reg, sample, weighted least squares, standard deviation, estimate, normal distribution, dataset, confidence interval, likelihood function, censoring, survival regression 21
33 Design of Experiments (DOE) Using JMP Charles E. Shipp quality control, sample size 4
34 Does foo Pass-Through? SQL Coding Methods and Examples using SAS Software Stephen Crosbie Rapid Fire: Processing data between SAS software and a DBMS, such as Netezza or DB2. Application of the SQL Procedure with the CONNECT Statement (requires SAS/CONNECT software) and use of the PROC SQL Pass-Through Facility. While a SAS library reference gives PROC SQL access to DBMS tables (requires SAS/ACCESS software), using Pass-Through SQL coding instead can often provide faster results. This paper provides useful examples of queries that were passed-through to a DBMS to take advantage of greater processing resources or better query optimization proc sql, sql pass-through, implicit sql pass-through, libname statement, proc step 4
35 Don't Get Blindsided by PROC COMPARE Joshua M. Horstman,
Roger D. Muller
"NOTE: No unequal values were found. All values compared are exactly equal." That message is the holy grail for the programmer tasked with independently replicating a production dataset to ensure its correctness. Such a validation effort typically culminates in a call to PROC COMPARE to ascertain whether the production dataset matches the replicated one. It is often assumed that this message means the job is done. Unfortunately, it is not so simple. The unwary programmer may later discover that significant discrepancies slipped through. This paper surveys some common pitfalls in the use of PROC COMPARE and explains how to avoid them proc compare, proc step, data cleaning 7
36 Effectively Utilizing Loops and Arrays in the DATA Step Arthur X. Li The implicit loop refers to the DATA STEP repetitively reading data and creating observations, one at a time. The explicit loop, which utilizes the iterative DO, DO WHILE, or DO UNTIL statements, is used to repetitively execute certain SAS statements within each iteration of the DATA STEP execution. Utilizing explicit loops is often used to simulate data and to perform a certain computation repetitively. However, when an explicit loop is used along with array processing, the applications are extended widely, which includes transposing data, performing computations across variables, etc. Being able to write a successful program that uses loops and arrays, one needs to know the contents in the program data vector (PDV) during the DATA STEP execution, which is the fundamental concept of DATA STEP programming do loop, output, execution phase, array, conditional do loop, in=, out=, dataset, missing value, compilation phase, array bounds, implicit loop, temporary array, standard deviation, automatic variable, class variable, normal distribution, set statement 17
37 Efficient and Smart Ways to Manage Datasets for Clinical Data- Let SAS Do the Dirty Laundry! Gowri Madhavan,
Alan D. Leach
The ASQ (ages and stages) is an important questionnaire that is delivered to parents to assess any developmental delay in children 9-24 months. If the child fails an ASQ, he/she is referred to developmental agency at the initial stages for treatment. A child can have several well child care visits, the child can either pass or fail an ASQ, a child can pass once and fail subsequently or vice versa. It is important to capture the number of tests administered and the most recent test results for failures. However, dealing with these test results on a weekly basis for reporting public health information can be daunting! A patient's clinical history can vary and we don't always know what datasets to expect. Fortunately SAS provides us ways to dynamically intake and process this information with a minimum of effort to maintain. This paper discusses time saving techniques used to manage the intake and processing of numerous clinical data sources macro variable, conditional do loop, excel, proc step, proc sql, sas enterprise guide 9
38 Exploring the PROC SQL _METHOD Option Kirk Paul Lafler,
Charles E. Shipp
The SQL Procedure contains powerful options for users to take advantage of. This presentation and poster explores the fully supported _METHOD option as an applications development and tuning tool, and learn how to use this powerful option to understand and control how a query processes proc sql, proc step, sas log, where statement, error message, options statement, data merging 4
39 Fast Access Tricks for Large Sorted SAS Files Russell M. Lavery There are techniques for file access, of sorted files, that are described in the IT or Comp Science literature that most SAS programmers do not study or consider for their use. This is, in general, a time efficient decision on the part of the SAS programmer because we can trust SAS Institute to bring in useful techniques (e.g. indexing and hashing) and to make them convenient for us to use. However, there are situations where coding your own access method can be faster than a vanilla SAS access method. In addition, studying these techniques can be a reward in itself - sometimes giving a programmer a new view of how SAS works. This paper will show nine techniques that can be used on sorted files. Your performance will vary with the details of your SAS installation. Code illustrating these techniques will be provided in a SAS abbrev file that can be installed by anyone (admin rights not required) on their PC where statement, proc step, index, proc sql, data step 12
40 Few SAS PROCs that Help Improving College Recruitment and Enrollment Strategies Harjanto Djunaidi,
Monica Djunaidi
This paper discusses selected SAS PROCS which can be used by US colleges to improve their student recruitment and enrollment management strategies. Data were pulled from different sources such as NCES/IPEDS to show and illustrate the potential benefits of such applications. While the canned program might be able to accomplish the reporting needs and to some extend to produce certain basic statistical output by a matter of point-and-click, SAS will be the ultimate way to go in the future. The ability to translate strategies and decision makers' objectives into different SAS codes are imperative in a more volatile education industry which has been experiencing phenomenal structural changes recently such as the College Affordability Rating (CAR), a newly proposed government regulation. These changes occurred in fast rates with little or no time for adjustments. Therefore, it requires greater flexibility and ability to cope with them proc step, interest rate 10
41 Finding the Gold in Your Data: An Overview of Data Mining David A. Dickey logistic distribution, logistic regression, regression analysis, data mining, neural network, proc hpsplit, roc curve, validation set, data cleaning, training set, likelihood function, anova, odds ratio, response variable, binomial distribution 16
42 Getting Excel-lent Data: Generating SAS Datasets from a Directory of Spreadsheets Ben Cochran On occasions, a SAS user might find themselves in the position where they need to write a SAS program that can read and process files in a specific direct ory. In this case, the contents are a ll EXCEL spreadsheet files. All these files need to be read and converted into SAS datasets. This paper illustrates how to do this in a step by step process using the DATA STEP dataset, proc import, sas log, proc step, call execute 6
43 Getting Wild with Imports Kathryn Schurr,
Jonathan Wiseman
Ever have many similar datasets to import and not enough time to come up with a good macro to import and merge them all together? Using a wildcard import in SAS v9.3 will solve all of your woes. This paper presents an efficient technique for importing multiple data files under one folder at the same time. Then it will further address the wildcard import as a SAS Macro that can be used time and again for various folders containing differing data. This is a great tool for records kept electronically per facility, per student, or per patient; and especially when an extravagant query based data warehouse is unavailable data step, infile statement 5
44 Going From SAS/PC to SAS Enterprise Guide? Ira Shapiro SAS Enterprise Guide software allows users to do the following: 1. Create projects which consist of one or more SAS programs. 2. Visualize the interaction and flow between these programs. 3. Create complex charts/graphs more easily sas enterprise guide, sas enterprise guide project 8
45 Google Search Tips and Techniques for SAS and JMP Users Kirk Paul Lafler,
Charles E. Shipp
Google (www.google.com) is the world's most popular and widely-used search engine. As the premier search tool on the Internet today, SAS and JMP users frequently need to identify and locate SAS and JMP content wherever and in whatever form it resides. This paper provides insights into how Google works and illustrates numerous search tips and techniques for finding articles of interest, reference works, information tools, directories, PDFs, images, current news stories, user groups, and more to get search results quickly and easily 6
46 Hands-On SAS Macro Programming Tips and Techniques Kirk Paul Lafler The SAS Macro Language is a powerful feature for extending the capabilities of the SAS System. This presentation 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 function, macro parameter, %macro parameters, proc sql, dictionary tables, options statement, macro loop, &variable 9
47 I Heart SAS Users Joanne Ellwood This paper is targeted for anyone who has ever used SAS. In my 20 some years' experience, I have found SAS users to be smart, helpful and highly motivated. I would like to share some of the experiences I have had in supporting SAS users proc export, proc step 3
48 Ideas and Examples in Generalized Linear Mixed Models David A. Dickey SAS PROC GLIMMIX fits generalized linear mixed models for nonnormal data with random effects, thus combining features of both PROC GENMOD and PROC MIXED. I will review the ideas behind PROC GLIMMIX and offer examples of Poisson and binary data. PROC NLMIXED also has the capacity to fit these kinds of models. After a brief introduction to that procedure, I will show an example of a zero-inflated Poisson model, which is a model that is Poisson for counts 1,2,3,…, but has more 0s than is consistent with the Poisson poisson distribution, proc step, proc mixed, binomial distribution, likelihood function, proc glimmix, fixed effects, sample, proc calis, estimate, restricted maximum likelihood, logistic distribution, normal distribution, covariance, beta distribution, calendar year, numeric functions, maximum likelihood estimation, regression analysis, proc genmod, main effect 12
49 Improve Your ODS Experience with These Essential VBScript Tools Rose Grandy While so much is available in version 9.2 and 9.3 of SAS to make practically perfect submission-ready output using the Output Delivery System (ODS), there are still a few important things that just cannot be done with tools available within SAS. This paper will present some very useful SAS macros that will write and execute VBScript code to: convert ODS RTF files to true DOC files; merge table cells in ODS RTF files; convert RTF or DOC files to PDF; and, convert XML files created using ODS TAGSETS.EXCELXP to true EXCEL files macro definition, excel, proc step, proc report, macro variable 10
50 Improved Interaction Interpretation: Application of the EFFECTPLOT statement and other useful features in PROC LOGISTIC Robert G. Downer The interpretation of fitted logistic regression models for students, collaborators or clients can often present challenges. Explanation of significant interactions among continuous predictors can be particularly awkward. The EFFECTPLOT statement and other features in PROC LOGISTIC of SAS/STAT can be useful aids in meeting these challenges. The CONTOUR and SLICEFIT options of this statement are particularly advantageous for more effective displays. Through logistic modeling of Titanic survival data, this paper also illustrates other ODS graphics and output from models with categorical and continuous predictors. Some basic familiarity with logistic regression is assumed logistic distribution, proc logistic, proc step, logistic regression, regression analysis, nominal variable, contour plot, interval variable, predictor variable 8
51 Improving Your Relationship with SAS Enterprise Guide Jennifer Bjurstrom SAS Enterprise Guide has proven to be a very beneficial tool for both novice and experienced SAS users. Because it is such a powerful tool, SAS Enterprise Guide has risen in popularity over the years. As a result, SAS Technical Support consultants field many calls from users who want to know the best way to use the application to accomplish a task or to obtain the results they want. This paper encompasses many of those tips that SAS Technical Support has provided to customers over the years. These tips are designed to improve your proficiency with SAS Enterprise Guide in the areas of connection and configuration, workflow preferences, logging, data source management, project files, operating-system commands, and custom tasks sas enterprise guide, sas base, sql pass-through, excel, implicit sql pass-through, record count, sas programmer, proc sql, dataset 20
52 Increase Pattern Detection in SAS GTL with New Categorical Histograms and Color Coded Asymmetric Violin Plots Perry Watts histogram, proc step, density plot 11
53 Increase Your Productivity by Doing Less Arthur S. Tabachneck,
Xia Ke Shan,
Robert Virgile,
Joe Whitehurst
Using a keep dataset option when declaring a data option has mixed results with various SAS procedures. It might have no observable effect when running PROC MEANS or PROC FREQ but, if your dat asets have many variables, it could drastically reduce the time required to run some procs like PROC SORT and PROC TRANSPOSE. This paper describes a fairly simple macro that could easily be modified to use with any PROC that defines w hich variables should be kept and, as a result, make your programs run 12 to 15 times faster proc step, proc transpose, proc sort, cpu time, macro definition, by group processing 6
54 Information Value Statistic Bruce S. Lund,
David Brotherton
The Information Value (IV) statistic is a popular screener for selecting predictor variables for binary logistic regression. Familiar, but perhaps mysterious, guidelines for deciding if the IV of a predictor X is high enough to use in modeling are given in many textbooks on credit scoring. For example, these texts say that IV > 0.3 shows X to be a strong predictor. These guidelines must be considered in the context of binning. A common practice in preparing a predictor X is to bin the levels of X to remove outliers and reveal a trend. But IV decreases as the levels of X are collapsed. This paper has two goals: (1) Provide a method for collapsing the levels of X which maximizes IV at each iteration and (2) show how the guidelines (e.g. IV > 0.3) relate to other measures of predictive power. All data processing was performed using Base SAS regression analysis, logistic distribution, likelihood function, sample, logistic regression, proc logistic, proc step, macro call, credit scoring, predictor variable, proc freq, macro definition 18
55 Insurance Designation Randomization Application or How to Automate Your Bragging Irvin Snider Having taken over 65 insurance courses over the course of 25 year home office career, I have acquired 15 insurance designations to list behind my name. This causes problems because they never fit neatly on one line -- even if only the initials are used -- and to some people, the list of designations appears ostentatious. To solve this problem, I have developed SAS code to randomly select only five of the designations at any one time to place behind my name in my emails. Thus the list appears to be fresh with each email and I do not appear to be bragging (well, not too much). This presentation will include the topics of random selection, placing this output in a macro variable via CALL SYMPUT and calling the macro variable in the email message macro variable, call symput, do loop, sample, macro definition 9
56 Introducing a Colorful Proc Tabulate Ben Cochran Several years ago, one of my clients was in the business of selling reports to hospitals. He used PROC TABULATE to generate part of these reports. He liked the way this procedure 'crunched the numbers', but not the way the final reports looked. He said he would go broke if he had to sell default PROC TABULATE output. So, he wrote his own routine to take TABULATE output and render it through Crystal Reports. This was in during the days of the 6.12 release of SAS before there was something called the Output Delivery System (ODS). Once he got his hands on SAS ODS, he kissed his Crystal Reports good-bye. This paper is all about using PROC TABULATE to generate fantastic looking reports. If you want to generate BIG money reports with PROC TABULATE, this presentation is for you proc tabulate, proc step, output delivery system, class variable 13
57 Introducing PROC PSYCHIC David J. Corliss Here at MWSUG , we are pleased to present some of the functionality of the upcoming procedure PSYCHIC. While this procedure has been somewhat delayed and a release date is not set at this time , much of the functionality of PROC PSYCHIC is available in the most recent release of SAS ; this paper will focus on currently available capabilities, processes and techniques. Features of this data integra tion master procedure include interrogat ion of data to determine errors and the design of data models best suited to the data itself despite the best intentions of helpful managers. While the brain wave text mining feature remains in beta in the upcoming r elease, recommendations are made to replicate this functionality using voice -based communication to better identify customer needs and wants in the usual absence of clear direction. Keywords: Data Integration, Best Practices proc step, data dictionary, dataset, data integration 6
58 Introduction to Market Basket Analysis Bill Qualls Market Basket Analysis (MBA) is a data mining technique which is widely used in the consumer package goods (CPG) industry to identify which items are purchased together and, more importantly, how the purchase of one item affects the likelihood of another item being purchased. This paper will first discuss this traditional use of MBA, as well as introduce the concepts of support, confidence, and lift. It will then show how one company used MBA to analyze safety data in an attempt to identify factors contributing to injuries. Finally, a Base SAS macro which performs MBA will be provided and its usage demonstrated. Intended audience is anyone interested in data mining techniques in general, and in market basket analysis in particular, and while a Base SAS macro will be provided, no programming knowledge is required, and non-programmers will benefit from this paper market basket analysis, dataset, sas base, macro definition 20
59 Introduction to REDCap for Clinical Data Collection Shannon M. Morrison REDCap (Research Electronic Data Capture) is a free web-based tool developed by Vanderbilt University that aids in the collection of clinical data. The application is used primarily for creating databases and/or surveys by using the "Online Designer" in a web browser or constructing a "Data Dictionary" in EXCEL, which can be uploaded to REDCap. Multiple users can be added to a project and changes can be made quickly and easily online. Users have the ability to add validations and/or branching logic to variables to help with data quality, and once data collection is complete data can be exported to common statistical packages, including SAS! data dictionary, excel, missing value, interval variable, proc format, proc means, outlier, data cleaning 17
60 JMP, and JMP Training: a Panel Discussion Charles E. Shipp quality control, data visualization 2
61 Know Thy Data: Techniques for Data Exploration Andrew T. Kuligowski,
Charu Shankar
Get to know the #1 rule for data specialists: Know thy data. Is it clean? What are the keys? Is it indexed? What about missing data, outliers, and so on? Failure to understand these aspects of your data will result in a flawed report, forecast, or model. In this hands-on workshop, You will learn multiple ways of looking at data and its characteristics. You will learn to leverage PROC MEANS and PROC FREQ to explore your data. You will learn how to use PROC CONTENTS and PROC DATASETS to explore attributes and determine whether indexing is a good idea. You will learn to employ powerful PROC SQL's dictionary tables to easily explore aspects of your data proc step, dataset, proc sql, dictionary tables, proc contents, proc freq, proc print, cpu time, sas log, sas output, options statement, proc datasets, sas library, variable list, proc univariate 20
62 Leading and Lagging Indicators in SAS David J. Corliss Leading indicators are familiar to us from economics as factors whose changes are correlated with future events, while lagging indicators are correlated with previous activity. However, leading and lagging indicators appear in many areas on interest: changes in a person's diet, su ch as gaining or losing weight, correspond to risk group changes at a later da te. An increase in poverty over time corresponds to an increasing pris on population later on. Lagging indicators may be used to infer the past, unobserved history of a physical systems from automobile repairs to stellar explosions. This paper demonstrates code in Base SAS for identifying leading and lagging indicator s and measuring the difference in time between two linked behaviors. A facility is included for addressing the presence of missing data by suppressing points in time where the data are insufficien t to support accurate results correlation, time series analysis 8
63 Let SAS Do Your DIRty Work Richann J. Watson Making sure you have all the necessary information to replicate a deliverable saved can be a cumbersome task. You want to make sure that all the raw data sets are saved, all the derived data sets, whether they are SDTM or ADaM data sets, are saved and you prefer that the date/time stamps are preserved. Not only do you need the data sets, you also need to keep a copy of all programs that were used to produce the deliverable as well as the corresponding logs when the programs were executed. Any other information that was needed to produce the necessary outputs needs to be saved. All of these needs to be done for each deliverable and it can be easy to overlook a step or some key information. Most people do this process manually and it can be a time-consuming process, so why not let SAS do the work for you? macro variable, dataset, cdisc 7
64 Let the CAT Out of the Bag: String Concatenation in SAS 9 Joshua M. Horstman Are you still using TRIM, LEFT, and vertical bar operators to concatenate strings? It's time to modernize and streamline that clumsy code by using the string concatenation functions introduced in SAS 9. This paper is an overview of the CAT, CATS, CATT, and CATX functions introduced in SAS 9.0, and the new CATQ function added in version 9.2. In addition to making your code more compact and readable, this family of functions also offers some new tricks for accomplishing previously cumbersome tasks character functions, sas 9, catq, ifc, sas programmer 6
65 Life Imitates Art: ODS Output Data Sets that Look like Listing Output Dylan Ellis Confusingly, the output data set from a SUMMARY procedure looks nothing like the display in our output destination. Have you ever wished for an output data set that looks like the cross-tabulation you see in the listing window? Have you ever run a series of one-way frequencies on a list of variables and wished for a more compact tabular display? This presentation will show how we can leverage string functions and the automatic _TYPE_ variable from PROC TABULATE to reshape the output data set into a more intelligible and practical table visualization. Readers should be familiar with the basics of how to specify a categorical frequency table using PROC FREQ or PROC TABULATE proc step, proc tabulate, proc report, by group processing, proc means, proc freq, proc transpose, class variable, proc print, string functions, macro variable 14
66 Logistics Performance Metrics using SAS Macros Michael C. Frick Performance metrics for time-related processes, such as logistics delivery times, often follow an all too familiar pattern that is highly skewed to the right. In such cases, traditional central tendency statistics are of little use as they are dominated by the out-of-process events in the tail of the distribution and do not adequately describe the distribution of delivery times for in-process events. In this work, I propose a methodology that first splits the distribution into its two main components using a SAS macro that employs piece-wise linear regression to automatically determine the break point between the main body of the distribution and the tail. Using this automated splitting mechanism, we are able to classify the performance of a large number of individual shipping lanes across three categories: (1) percent of out-of-process events, (2) average performance for in-process events against an expected standard, and (3) variation in performance for in-process events macro definition, macro variable, key performance indicator, macro facility, regression analysis, proc step, standard deviation, proc reg, macro loop, do loop, proc print, macro call, excel, logistic distribution 9
67 Macro Design Ideas: Theory, Template, Practice Ronald J. Fehd macro function, full join, %if-%then-%else, macro variable, proc freq, macro loop 21
68 Macro to compute best transform variable for the model Nancy Hu 17
69 Maintaining Formats when Exporting Data from SAS into Microsoft Excel Nathaniel Derby,
Colleen E. McGahan
Data formats often get lost when exporting from SAS into EXCEL using common procedures such as PROC EXPORT or the ExcelXP tagset. In this paper we describe some tricks to retain those formats. KEYWORDS: SAS, EXCEL, export, formats excel, proc step, proc export, missing value 11
70 Managing and Monitoring Statistical Models Nathaniel Derby Managing and monitoring statistical models can present formidable challenges when you have multiple models used by a team of analysts over time. How can you efficiently ensure that you're always getting the best results from your models? In this paper, we'll first examine these challenges and how they can affect your results. We'll then look into solutions to those challenges, including lifecycle management and performance monitoring. Finally, we'll look into implementing these solutions both with an in-house approach and with SASModel Manager. KEYWORDS: SAS, manage, monitor, statistical models. All data sets and code in this paper are available athttp://nderby.org/docs/RUG13-StatModels.zip proc logistic, logistic distribution, proc step, confusion matrix, gain chart, training set 13
71 Marrying Customer Intelligence with Customer Segmentations to Drive Improvements to Your CRM Strategy Phil Krauskopf There are a plethora of segmentation schema available that can be used to group your customer base. However, choosing which one is best for your customer base is often a point of differing opinion within a marketing department. And once a particular schema is chosen, selecting which intelligence-gathering activities should be applied in order to learn about the customers within each segment presents its own set of issues. Finally, integrating that intelligence into your current marketing strategy to create a structured and comprehensive, even stronger strategy muddies things even further. This paper reviews some of the most common segmentation schema which the author has encountered in Industry, and some ideas on how to select among various options. He will also discuss some of the intelligence-gathering tools available to the data scientist, and how this intelligence might be integrated into a marketing strategy customer segmentation, sample, market basket analysis, credit migration, sample size, proc princomp 8
72 Not All Equals are Created Equal: Nonstandard Statement Structures in the DATA Step Arthur L. Carpenter The expression is a standard building block of logical comparisons and assignment statements. Most of us use them so commonly that we do not give them a second thought. But in fact they definitely do deserve that second thought. A more complete understanding of their construction and execution can greatly expand our ability to more fully take advantage of this fundamental component of the SAS Language. Once we understand the basic form of the expression and how it is used in various statements, we can use this understanding to create statement forms that would otherwise appear to be illegal or just plain wrong. Further and perhaps even more importantly this deeper understanding can help to prevent us from committing errors in logic if-then-else, do loop, missing value, macro facility, macro variable, sign, conditional do loop 10
73 Optimize Your Delete Brad Richardson Have you deleted a data set or tw o from a library that contains thousands of members using PROC DATASETS? If so, you probably have w itnessed some w ait time. To maximize performance, w e have reinstated PROC DELETE as a SAS-supported procedure. One of th e main differences betw een PROC DELETE deletion methods versus PROC DATASETS DELETE is that PROC DELETE does not need an in -memory directory to delete a dataset. So w hat does this mean exactly? This paper w ill explain all proc step, proc delete, proc copy, cpu time, proc datasets, sas library 7
74 Power Trip: A Road Map of PROC POWER Melissa Plets,
Julie Strominger
Sample size and power analyses are extremely important components to consider when designing, planning and recruiting for prospective clinical research projects. Unfortunately, these are often considered to be scary and complicated calculations for research clinicians. PROC POWER offers a systematic solution to finding the balance between efficiency and conclusive results, while remaining simple enough for non-statisticians to use. More power is universally considered to be advantageous, even outside of the domain of statistics. It is especially important in statistics, as more power results in a higher probability that the null hypothesis will be rejected when it is false. Additionally, sample size is directly related to power. In general, a larger sample size will result in more accuracy, precision, and higher power. An important aspect of study design is maximizing power while remaining within the bounds of financial feasibility sample, sample size, proc power, proc step, effect size, null hypothesis, clinical research, significance level 4
75 PROC NLMIXED and PROC IML: Mixture distribution application in Operational Risk Sabri Guray Uner,
Yunyun Pei
The main purpose of this study is to provide guidelines on how to consider mixture distributions for operational risk severity distribution modeling, with an emphasis on truncated loss data. Mixture model probability distribution function for truncated operational loss data is introduced and we presented our findings for empirical tests to estimate distribution parameters. However, this study does not intend to advocate or to propose adopting mixture forms without exploring other alternatives, but rather highlights the flexibility of the mixture models and present examples where it can serve better for some specific cases. Keywords: Operational risk, capital model, mixture distribution, severity fitting, truncated distribution Disclaimer: The views expressed in this paper are those of the authors and do not necessarily reflect those of the institutions they are affiliated to, such as Union Bank. The authors would like to express thanks to … for valuable feedback and comments operational risk, proc step 19
76 PROC SGPLOT over PROC GPLOT Shruthi Amruthnath SAS offers different statistical graphic procedures for data visualization and presentation. SAS 9.2 brought out a new family of template-based graphical procedures to create high-quality graphics called Statistical Graphics (SG) procedures. These procedures are so powerful that more complex information can be presented effectively with minimal coding. This paper will focus on employing SGPLOT versus GPLOT; applying SGPLOT to financial data to create reports for trending data, consolidated reports and yearly reports; and managing, displaying and styling procedural output using ODS PDF. The SGPLOT procedure has different types of graphical figures like bar charts, line graphs and scatter plots. This paper explains how to produce line graphs like line plot and area plot by setting different options. In this presentation, each of these topics is illustrated using different techniques with an example proc step, proc sgplot, proc gplot, scatter plot, ods pdf, series plot, bar chart 11
77 PROC SURVEYSELECT as a Tool for Drawing Random Samples Taylor Lewis This paper illustrates some of the many sampling algorithms built into PROC SURVEYSELECT, particularly those pertinent to complex surveys, such as systematic, probability proportional to size (PPS), stratified, and cluster sampling. The primary objectives of the paper are to provide background on why these techniques are used in pra ctice and to demonstrate their application via syntax examples. Hence, this is not a how-to paper on designing a statistically efficient sample -there are entire textbooks devoted to that subject. One exception is that the paper will discuss a few recently incorporated sample allocation strategies-specifically, proportional, Neyman, and optimal allocation. The paper concludes with a few examples demonstrating how one can use PROC SURVEYSELECT to handle certain frequently-encountered sample design issues such as alternative sampling methods across strata and multi-stage cluster sampling sample, proc surveyselect, proc step, sample size, random sampling, cluster sampling, systematic sampling, numeric variable, stratified sampling, sample weight 12
78 Reading and Writing RTF Documents as Data: Automatic Completion of CONSORT Flow Diagrams Arthur L. Carpenter,
Dennis G. Fisher
Whenever the results of a randomized clinical trial are reported in scientific journals, the published paper must adhere to the CONSORT (CONsolidated Standards Of Reporting Trials) statement. The statement includes a flow diagram, and the generation of these CONSORT flow diagrams is always problematic, especially when the trial is not the typical two-arm parallel design. Templates of the typical two-arm design flow diagram are generally available as RTF documents, however the completion of the individual fields within the diagram is both time consuming and prone to error. The SAS Macro language was used to read a RTF template file for the CONSORT flow diagram of choice, fill in the fields using information available to the SAS program, and then rewrite the table as a completed RTF CONSORT flow diagram. This paper describes the process of reading and writing RTF files macro loop, do loop, macro facility, macro variable, macro function 9
79 Residential Energy Efficiency and the Principal-Agent Problem Ryan Anderson Investments in residential energy-efficiency are associated with both positive externalities (reduced greenhouse gas emissions, reduced need for new power-generating capacity) and private cost savings. However, these investments lag far behind even those levels predicted by conventional cost-benefit analysis. This paper explores one potential explanation for this "efficiency gap" - the principal-agent (PA) problem as it applies to rental housing. I employ SAS 9.3 to perform a logistic regression on data from the 2009 Residential Energy Consumption Survey and find that the PA problem is particularly pronounced in regards to weatherization improvements, a result that has implications for public policy. Somewhat advanced SAS techniques were used to report the results of this regression in terms of marginal effects. A basic familiarity with statistical processes and microeconomic theory is useful in reviewing this paper regression analysis, predictor variable, response variable, likelihood function, logistic regression, binary variable, logistic distribution, sample 11
80 Reuse, Don't Reinvent: Extending Model Selection Using Recursive Macro Anca M Tilea,
Philip L Francis III
The existing SAS macro: %MODEL_SELECT - used recursively to select the "best" model based on the R2 selection method - is performing great for specific data and specific variables. The steps of the macro %MODEL_SELECT are as follows: perform a BEST SUBSETS selection based on R2 to get the list of candidate models, calculate the estimates and associated p-values, eliminate the covariates that are never significant, and repeat. This macro does not allow for multilevel variables to be considered for model selection, it does not allow for hierarchical modeling, and it only considers one model selection method: R2. This paper aims to enhance existing SAS methods, specifically, by allowing various model selection methods (e.g., adjusted-R2, Mallows's Cp, etc.) and the inclusion of categorical variables with multiple levels. The added capabilities will allow the macro to still be user friendly, yet be more robust macro variable, proc step, sample, nominal variable, feature selection, sample size 5
81 Same Data Different Attributes: Cloning Issues with Data Sets Brian K. Varney When dealing with data from multiple or unstructured data sources, there can be data set variable attribute conflicts. These conflicts can be cumbersome to deal with when developing code. This paper intends to discuss issues and table driven strategies for dealing with data sets with inconsistent variable attributes proc step, dataset, proc contents, proc sql, proc append, create table, variable, length statement 8
82 SAS and REDCap API: Efficient and Reproducible Data Import and Export Sarah Worley,
Dongsheng Yang
REDCap (Research Electronic Data Capture), a web application for the development and use of online research databases, allows SAS software users to download automatically-generated SAS code for importing, labeling, and formatting data. REDCap Application Programming Interface (REDCap API) provides SAS users with the option to import and export data, files, and database settings through SAS programs. The use of REDCap API with both PC and server installations of SAS 9.3 will be demonstrated dataset, macro variable, proc http, macro facility, proc step 5
83 SAS Automation - From Password Protected Excel Raw Data To Professional-Looking PowerPoint Report Jeff Hao In banking and finance industry, the most common report format presented to the executives is Microsoft PowerPoint (PPT). How to realize the SAS automation process from EXCEL raw data to PPT report is a tremendous challenge. The first step of the process is to directly import password protected EXCEL raw data into SAS data sets. The second step is to convert the tables and graphs to be used on PowerPoint slides into image formats such as PNG or JPG. The last step deals with exporting the tables and figures images into customized professional-looking PowerPoint report. Actually, the first and third steps are the most difficult parts of the whole automation process. By combining SAS with DDE, PROC TEMPLATE, SAS/GRAPH Statistical Graphics (SG) procedures, Graph Template Language (GTL), PROC REPORT, ODS Printer, and VBScript, the whole automation process comes true excel, proc step, dataset, proc import, proc template, proc report, proc sgplot, raw data 13
84 SAS Commands PIPE and CALL EXECUTE; Dynamically Advancing from Strangers to Best Friends Kent Phelps,
Ronda Phelps,
Kirk Paul Lafler
Communication is the basic foundation of all relationships , including your relationship with SAS and the Server/PC/Mainframe (S/P/M). There are times when you need to communicate with the S/P/M, through the UNIX, Windows, or z/OS Operating System (OS) , to obtain important data to use in your various projects. To communicate with the S/P/M, you will ideally design your SAS program to request, receive, and utilize data to automatically create and execute Dynamic Code. Our presentation highlights the powerful SAS partnership which occurs when the PIPE and CALL EXECUTE commands are surprisingly and creatively used together within SAS Enterprise Guide Base SAS Program Nodes. You will have the opportunity to learn how 1,259 time-consuming Manual Steps are amazingly replaced with only 3 time-saving Dynamic Automated Steps. We look forward to introducing you to the powerful PIPE and CALL EXECUTE partnership - Your newest BFF (Best Friends Forever) in SAS call execute, sas base, sas enterprise guide, infile statement 30
85 SAS Enterprise Guide - Implementation Hints and Techniques for Insuring Success with Traditional SAS Programmers Roger D. Muller Traditional SAS programmers develop SAS code in files and submit it for processing regardless of the operating environment (PC, Unix, mainframe, etc.). SAS Enterprise Guide (EG) follows this model, but adds some unique additional capabilities. This paper addresses setup, initialization and workflow ideas to smoothen and enhance the transition to the EG graphical user interface centered around a process flow window. This paper will address local vs. remote (server) processing. Starting with hardware and network capabilities, the paper then moves into a discussion on data location and how that affects work flow. Certain features in SAS EG may either be hidden or exposed with advantages to doing either. The number of process flows in an Enterprise Guide Project offers flexibility in constructing the total programming effort. The ability to store code at a central facility as Stored Processes for sharing with other users will be discussed sas enterprise guide, sas programmer, sas base, proc step, sas programming, data cleaning, proc sql 9
86 SAS PROC REPORT: How It Helps Improving College Student Retention Rate Harjanto Djunaidi,
Monica Djunaidi
This paper has shown how SAS PROC REPORT combined with other SAS PROCs can be utilized and applied by US colleges to improve their student retention and graduation rate. These education analytics approaches and tools are becoming more important after the Administration recently announced that College Affordability Rating (CAR) criteria will be used as the basis in awarding federal funding such as Pell grant to US Colleges. Higher learning institutions with higher CAR will be awarded more federal money compared to those who have lower rating. Time is running out for the colleges to improve their report card such as graduation rate which is one of the components measured in the CAR. These institutions have practically one academic year not only to improve the graduation rate, but also to reduce their tuition and their students' debt proc step, proc report, data science, logistic distribution, predictor variable 14
87 SAS Stored Processes on the Web - Building Blocks Mark Roberts This paper explains, in a step-by-step format, the concepts, issues, techniques, and code needed to develop a web-based application from stored processes. Running an application on the web allows users to execute powerful SAS procedures without knowing SAS, without having SAS on their desktop, and without a SAS license. It also allows companies to distribute the application to many locations. If the application needs a change, it is fixed in one place, loaded to the SAS portal, and all locations see the corrected code at the same time. A SAS developer needs only an understanding of stored processes, prompts, macros, a little HTML, and a little knowledge of PROC Reports to achieve this. The paper explains the concepts and techniques clearly via an example that runs consistently throughout. The code used for each concept is also included. The author put everything he learned developing his own application together in one place, something he couldn't find when he first started sas enterprise guide, macro variable, proc step, sql server, proc sql 32
88 SAS Treatments: One to One Marketing with a Customized Treatment Process Dave Gribbin,
Amy Glassman
The importance of sending the right message to the right person at the right time has never been more relevant than in today's cluttered marketing environment. SAS Marketing Automation easily handles segment level messaging with out-of-the-box' functionality. But how do you send the right message and the appropriately valued offers to the right person? And, how can an organization efficiently manage many treatment versions across distinct campaigns? This paper presents case studies of companies across different industries that send highly personalized communications and offers to their clientele using SAS Marketing Automation. It describes how treatments are applied at a segment and a one-to-one level. It outlines a simple custom process that streamlines versioning treatments for reuse in multiple campaigns master data management, dataset 14
89 SAS: The Power of Macros Audrey Yeo The SAS Macro facility is an extremely powerful tool that should be in the toolbox of every SAS programmer. However, without some proper training it is difficult to implement, or when it is implemented it often results in hard to understand code. On the other hand once you have mastered the macro facility, it opens up a whole new world. This paper will show some examples of creating using SAS macros to help simplify coding and reduce repetition or duplication of code do loop, macro variable, if-then-else, macro definition, macro put 20
90 SAS: Tips and Tricks Audrey Yeo Using SAS in the work environment is different from using SAS in the educational environment. Data in the work environment is neither as perfect nor as simple as data in the educational environment. This paper will highlight some tips and tricks that will help a new SAS user, whether a recent graduate or just new to SAS, deal with some common but challenging problems proc sql, proc step, full join, proc format, inner join, right join 11
91 sasNerd: Better Searches = Better Results Kirk Paul Lafler,
Charles E. Shipp,
Richard W. La Valley,
Lex Jansen
As SAS- and JMP-related content continues to grow to new levels the world's leading search engines (Google, Bing, and Yahoo) and their proprietary software, organizes this information and makes it useful and accessible to everyone. Growing numbers of users benefit from the speed, accuracy, organization, and reliability of these powerful search engines, as well as the capabilities that LexJansen.com provides as a web portal for finding relevant SAS and JMP content. Due to the importance of finding desired content whenever it's needed, users turn to their favorite search engine, or LexJansen.com with its repository of 25,000-plus published papers, for their search needs 5
92 Seamless Dynamic Web (and Smart Device!) Reporting with SAS Donald L Penix Jr. The SAS Business Intelligence platform provides a wide variety of reporting interfaces and capabilities through a suite of bundled components. SAS Enterprise Guide , SAS Web Report Studio, SAS Add-In for Microsoft Office, and SAS Information Delivery Portal all provide a means to help organizations create and deliver sophisticated analysis to their information consumers 1. However businesses often struggle with the ability to easily and efficiently create and deploy these reports to the web and smart devices. If it is done, it is usually at the expense of giving up dynamic ad-hoc reporting capabilities in return for static output or possibly limited parameter-driven customization. The obstacles facing organizations that prevent them from delivering robust ad-hoc reporting capabilities on the web and on smart devices are numerous. More often than not, it is due to the lack of IT resources and/or project budget bar chart, raw data, dataset 9
93 Statistical Models for Proportional Outcomes Wensui Liu,
Kelly Zhao
For many practitioners, ordinary least square (OLS) regression with Gaussian distributional assumption might be the top choice to model proportional outcomes in many business problems. However, it is conceptually flawed to assume Gaussian distribution for a response variable in the [0, 1] range. In this paper, several modeling methodologies for proportional outcomes with their implementations in SAS should be discussed through a data analysis exercise in modeling financial leverage ratios of businesses. The purpose of this paper is to provide a relatively comprehensive survey of how to model proportional outcomes to the SAS user community and interested statistical practitioners in various industries. Keywords Proportional outcomes, Tobit model, Non-linear least squares (NLS) regression, Fractional Logit model, Beta regression, Simplex regression logistic regression, regression analysis, likelihood function, estimate, normal distribution, sample, proc nlmixed, logistic distribution, probability functions, beta distribution, response variable 17
94 The Essence of DATA Step Programming Arthur X. Li The fundamental of SAS programming is DATA STEP programming. The essence of DATA STEP programming is to understand how SAS processes the data during the compilation and execution phases. In this paper, you will be exposed to what happens "behind the scenes" while creating a SAS dataset. You will learn how a new dataset is created, one observation at a time, from either a raw text file or an existing SAS dataset, to the program data vector (PDV) and from the PDV to the newly-created SAS dataset. Once you fully understand DATA STEP processing, learning the SUM and RETAIN statements will become easier to grasp. Relating to this topic, this paper will also cover BY-group processing output, dataset, automatic variable, retain, execution phase, input statement, _n_, compilation phase, if-then-else, out=, by group processing, sas log, set statement, in=, subsetting if, infile statement, missing value, put statement, proc step 19
95 The Graph Template Language: Beyond the SAS/GRAPH Procedures Jesse M. Pratt The SGPLOT and SGPANEL procedures are powerful tools that are capable of producing many types of high quality graphs; however, these procedures have some limitations. What happens when one is asked to specifically produce a graph that these procedures cannot create? The Graph Template Language (GTL) is much more flexible when it comes to creating customized displays. This paper presents situations where the SGPLOT and SGPANEL procedures break down, then briefly introduces GTL, and finally uses GTL to generate the displays not possible in PROC SGPLOT and PROC SGPANEL proc step, box plot, proc sgplot, proc template, scatter plot, proc sgpanel, graph template language, histogram 10
96 The JMP Journal: An Analyst's Best Friend Nathaniel Derby The JMP Journal is an incredibly useful tool for consultants and analysts, yet it's not commonly used. We first explain what the JMP Journal is, then describe how it can be effectively used to keep track of an analysis (and its underlying code), to present results to a boss or client, or to use as a collaboration tool. KEYWORDS: SAS, EXCEL, export, formats 5
97 The Joinless Join; Expand the Power of SAS Enterprise Guide in a New Way Kent Phelps,
Ronda Phelps,
Kirk Paul Lafler
SAS Enterprise Guide can easily combine data from tables or data sets by using a Graphical User Interface (GUI) PROC SQL Join to match on like columns or by using a Base SAS Program Node DATA STEP Merge to match on the same variable name. However, what do you do when tables or data sets do not contain like columns or the same variable name and a Join or Merge cannot be used? Well, we have the answer for you! We invite you to attend our presentation on the Joinless Join where we expand the power of SAS Enterprise Guide in a new way. You will learn how to design and utilize a Joinless Join to perform Join and Merge processing using tables or data sets which do not contain like columns or the same variable name. We will briefly review the various types of Joins and Merges and then quickly delve into the detailed aspects of how the Joinless Join can advance and enhance your data manipulation and analysis. We look forward to introducing you to the surprising paradox of the Joinless Join proc freq, sas enterprise guide, inner join, data cleaning, record count, proc sql, proc step, right join 25
98 The Secret Life of DATA STEP Swati Agarwal Each SAS DATA STEP functions as a self -contained mini program that is compiled and run within your overall SAS program. Much of DATA STEP processing is implicit. For example, DATA STEP statements are executed within an implied loop even though you do not use loop control statements. This paper discusses several of the implied DATA STEP statements that control how your DATA STEP really works. Concepts you will be introduced to: the Logical Program Data Vector automatic SAS variables and how are they used understanding the internals of DATA STEP processing what happens at program compile time what's actually happening at execution time how variable attributes are captured and stored. You have probably written a number of DATA Steps in your codes; some works , some don't; sometimes you know why; and sometime s you are struggling and scratching your head what went wrong. If this describes you, then this talk is for you pdv, automatic variable, execution phase, input statement, set statement 10
99 The Utility of the DATA Step Debugger in Logic Errors Darryl Nousome There are a few strategies in debugging errors that arise during SAS programming. Errors in programming can manifest as either syntax or logic errors. Syntax errors tend to be easily identified as they stop the program and generate error messages in the log window. While logic errors will not halt SAS during the DATA STEP compilation phase, th is may result in data that is unintended. A useful tool in examining logic errors is invoking the DATA STEP Debugger, which allows viewing of the Program Data Vector (PDV) during the execution of the DATA STEP. When the DATA STEP Debugger is running, there are many options that can examine values of selected variables, suspend statements, display the values of any variables in the PDV, or other commands. This process can aid in identifying segments of code that may contain logic errors. This paper will high light some techniques that are used by the DATA STEP Debugger sas log, compilation phase 5
100 Time Contour Plots 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 the vertical direction showing changes over time. As a system evolves over time, different kinds of events have different characteristic patterns. Creation of Time Contour Plots is explained step by step. Examples are given in astrostatistics, biostatistics, econometrics and demographics. Keywords: Data Visualization, PROC CONTOUR, Time Series Analysis contour plot, interval variable, time series analysis, proc step 11
101 Transitioning from Batch and Interactive SAS to SAS Enterprise Guide Brian K. Varney Although the need for access to data and analytical answers remains the same, the way we get from here to there is changing. Change is not always adopted nor welcomed and it is not always voluntary. This paper intends to discuss the details and strategies for making the transition from traditional SAS software usage to SAS Enterprise Guide. These details and strategies will be discussed from the company as well as the individual SAS developer level. The audience for this paper should be traditional SAS coders who are just getting exposed to SAS Enterprise Guide but still want to write code sas enterprise guide, sas library, sas enterprise guide project, sas batch 13
102 Trend Reporting Using the MXG Trend Performance Database Neal Musitano Jr. This paper is about my user experience on trend reporting for z/OS server performance using the MXG Trend Performance Database (PDB) . In order to implement trend report ing with graphs and charts , the trend pdb must be built first . Thus my user experience of building the trend pdb is included. MXG users build a daily pdb and they use it to produce daily reports for z/OS performance monitoring. However; because of daily tasks or firefighting duties, or deadlines in getting ou t daily reports or other reasons they sometimes overlook building the trend perfor mance database. Additional reasons for the delaying the trend pdb implementation, include uncertainties of what is involved in building the trend pdb, what to include in it, unfamiliarity of the trend pdb structure and what information to collect for the trends. This paper will address those issues to help users get started with z/OS trend reporting and building the MXG trend performance database proc step, proc contents, dataset 10
103 Uncovering Patterns in Textual Data for SAS Visual Analytics and SAS Text Analytics Daniel Zaratsian,
Mary Osborne,
Justin Plumley
SAS Visual Analytics is a powerful tool for exploring data to uncover patterns and hidden opportunities. The challenge with the growing amount of data is that the majority is unstructured, often in the form of customer feedback, survey responses, social media conversation, blogs, news articles, and other unstructured text. By integrating SAS Visual Analytics with SAS Text Analytics, you can uncover patterns in both structured and unstructured data, while enriching and visualizing your data with customer sentiment and categorical flags, and uncovering root causes that primarily exist within unstructured data. This paper highlights a case study that provides greater insight into unstructured data and demonstrates advanced visualization, while enhancing time to value by leveraging SAS Visual Analytics high-performance, in-memory technology and SAS advanced text analytics capabilities unstructured data, root cause analysis 11
104 Use SAS/ETS to Forecast Credit Loss for CCAR Xinpeng (Tom) Wang After the 2007-2009 financial crises, the Federal Reserve begins to conduct annual stress tests of Bank Holding Companies ("BHCs") with total consolidated assets of $50 billion or more ("Covered Company"). To estimate credit losses for BHCs loan portfolio, one solution is to employ SAS logistic and regression procedures to predict probability of default (PD) and loss given default (LGD). This paper presents an alternative utilizing SAS/ETS package to forecast net charge offs (NCOs) on the aggregated data. Then the paper discusses general limitations of models in financial risk management and specific shortages for both approaches time series analysis, stress scenario, sample, proc arima 4
105 Using Microsoft Windows DLLs within SAS Programs Rajesh Lal SAS has a wide variety of functions and call routines available. More and more Operating System level functionality has become available as part of SAS language and functions over the versions of SAS. However, there is a wealth of other Operating System functionality that can be accessed from within SAS with some preparation on the part of the SAS programmer. Much of the Microsoft Windows functionality is stored in easily re-usable system DLL (Dynamic Link Library) files. This paper describes some of the Windows functionality which may not be available directly as part of SAS language and methods of accessing that functionality from within SAS code. Using the methods described here, practically any Windows API should become accessible. User created DLL functionality should also be accessible to SAS programs txt, proc step, data step 10
106 Using ODS PDF, Style Templates, Inline Styles, and PROC REPORT with SAS Macro Programs Patrick Thornton A production system of SAS macro programs is described that modularize the generation of syntax to produce client- quality reports of descriptive and inferential results in a PDF document. The reusable system of macros include programs that save all current titles, footnotes, and option settings, establish standard titles, footnotes and optio n settings, and initially create the PDF document. Macro programs may be called to generate PROC REPORT syntax to produce various tables of descriptive and inferential results with table numbers, footnotes and customized bookmarks. A modified style template is use to determine the look of the whole document, and a macro program of inline style definitions is used to define the defaults for each type of table. A version of the inline style macro program may be customized to accommodate the needs of each pr oject, and inline style parameters may also be modified for any given macro call proc report, ods pdf, proc step, macro variable, macro definition, macro loop, macro conditional, options statement, stored macro, proc freq 21
107 Using PROC FCMP to the Fullest: Getting Started and Doing More Arthur L. Carpenter The FCMP procedure is used to create user defined functions. Many users have yet to tackle this fairly new procedure, while others have only attempted to use only its simplest options. Like many tools within SAS, the true value of this procedure is only appreciated after the user has started to learn and use it. The basics can quickly be mastered and this allows the user to move forward to explore some of the more interesting and powerful aspects of the FCMP procedure. Starting with the basics of the FCMP procedure, this paper also discusses how to store, retrieve, and use user defined compiled functions. Included is the use of these functions with the macro language as well as with user defined formats. The use of PROC FCMP should not be limited to the advanced SAS user; even those fairly new to SAS should be able to appreciate the value of user defined functions macro facility, proc fcmp, proc step, macro function 10
108 Using SAS in Clinical Programming Project Management from Excel Spreadsheets Jean Crain The Programming Review and Validation Form (PRVF) EXCEL Workbook tracks every program and every output for a study. It also captures the initials and name of the employee on a Signature Page. The same initials are entered on the spreadsheets for the different types of output: Analysis Data Sets, Graphs, Listings and Summaries as are present on the Signature Page. On each programming spreadsheet in the workbook, an employee will enter their initials to accept a program and track its status on a row on that page identified for that step of the process. The date of completion of each step is entered on that spreadsheet by the employee, along with their initials, and a Status Flag is set when their step is completed, signaling to the next employee when it is ready to start their validation process data cleaning, group by, create table, proc step, proc sql, order by, proc report, excel, data step, randomization 13
109 Using SAS ODS Graphics Chuck Kincaid This presentation will teach the audience how to use SAS ODS Graphics. Now part of Base SAS, ODS Graphics are a great way to easily create clear graphics that allow any user to tell their story well. SGPLOT and SGPANEL are two of the procedures that can be used to produce powerful graphics that used to require a lot of work. The core of the procedures are explained, as well as the options available. Furthermore, we explore th e ways to combine the individual statements to make more complex graphics that tell the story better. Any user of Base SAS on any platform will find great value from the SAS ODS Graphics procedures series plot, proc step, box plot, bar chart, sas base, output delivery system, numeric variable, proc sgplot, proc sgpanel 18
110 Using SAS to Analyze Data Submitted to the National Healthcare Safety Network (NHSN) Michelle Hopkins Hospitals in the U.S. are required by the Centers for Medicare & Medicaid Services (CMS) to submit data on a variety of Healthcare-Associated Infections (HAIs). These are infections that are acquired in the course of receiving care for other health conditions. These HAIs include Central Line-Associated Bloodstream Infections (CLABSI), Catheter- Associated Urinary Tract Infections (CAUTI), Surgical Site Infections (SSI), Clostridium difficile Infections (CDI), and others. The number of HAIs in the United States is alarming, costly, and can be deadly. Hospitals report this data to the Center for Disease Control's National Healthcare Safety Network (NHSN). Using SAS 9.2, this paper will show how you can use the data found on NHSN for analysis. This analysis includes importing data, summarizing infection rates, and using the data to drive much needed improvement proc sql, proc step 5
111 Using the SAS Projman Application for Scheduling Projects Jon M Patton SAS/OR software has four major procedures that can be used to manage projects. The CPM and PM procedures are used to schedule tasks for a project subject to precedence, time, and resource constraints. The PM procedure is the interactive version of the CPM procedure. The GANTT procedure dis plays this schedule, and the NETDRAW procedure displays the project network consisting of these tasks. These four procedures are integrated into the Projman application which is a friendly graphical user interface included as part of the SAS/OR software. This tutorial will cover the usage of these four procedures and the Projman application. The early part of the tutorial will cover the definition of terminology that is critical for understanding the output results. Then example projects containing r esource, time, and precedence constraints will be scheduled using the Projman application sample, macro definition 13
112 Writing Macro Do Loops with Dates from Then to When Ronald J. Fehd macro variable, macro loop, macro function, do loop, macro put, macro call, %if-%then-%else, proc print, proc step, macro definition 20
113 You Could Be a SAS Nerd If . . . Kirk Paul Lafler Are you a SAS nerd? Wiktionary, a wiki-based Open Content dictionary, defines "nerd" as a person who has good technical or scientific skills, but is generally introspective or introverted. Another definition is a person who is intelligent but socially and physically awkward. Obviously there are other definitions for "nerd", many of which are associated with derogatory terms or stereotypes. This presentation focuses not on the negative descriptions associated with being a nerd, but on the many positive traits SAS users possess. So let's see how nerdy you actually are using the mostly unscientific, but fun, "Nerd" detector sas programmer, sas log 4

Back to Conf go 2014 go 2012

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.