SESUG 1996 Papers - Index
76 papers. Source: SESUG (SouthEast SAS Users Group) conference proceedings.
| # | Title× | Authors× | Abstract× | Keywords× | Extras | Pages |
|---|---|---|---|---|---|---|
| 1 | %ARRAY: Construction and Usage of Arrays of Macro Variables | Ronald J. Fehd | The SAS software DATA STEP statement array V {3} $ Vl·V3 ('A' '8' 'C1; produces three character variables named VI, V2, 811d V3 wfth corresponding initial values, 'A', 'B', and 'C' 811d a tunction, dim(V), which returns a value at 3. Programmers can write Simple macro tools tor use in larger macro procedures. These tools can dupUcate SAS DATA STEP constructions that the programmer is already comtortable using and make reading and comprehension easier. The macro statement %ARRAY(V,A B C) produces three macro-variables named VI, V2, and V3 With corresponding values: A, B, and C and a macro-variable DIM_ V with the value 3. These macro-variables can then be used in the macro statement %DO I. 1 %TO &DIM_V.; This paper examines the SAS DATA STEP array statement and discusses the issues in constructing and using arrays of macro·variables. The macro ARRAY takes parameters of either a list of elements or a data set |
macro variable, macro facility, macro definition, data step, array, proc contents, proc step | 5 | |
| 2 | %CHECKALL: A Macro to Produce a Frequency of Response Data Set from Multiple-Response Data | Ronald J. Fehd | For the question '(Who, What, Why, When, Where, How)',the answer may be A, or B. When the answer is (A and B) the sum of the percent response becomes grealerthan 100: A: 41(85.4%), B: 31(84.8%) N=48. MuHiple-response data where questions have the phrase "check all that apply' appended to them present a challenge to the SAS programmer because the response rate tor each question is dependent upon the oIher variables in the series. This paper examines the SAS PROC FREQ output data set and discusses the issues in constructing a similar data set for muHiple-response data. Issue related to labeling, storege and type of muHiple-response variables are discussed. The CHECKALL macro takes as parameters an output data set name, a list of the variables containing the multiple-response data. The values of the output data set variable are the labels of the input data set multiple-response variables |
proc step, proc freq, macro variable | 6 | |
| 3 | %SHOWCOMB; A Macro to Produce a Data Set with Frequency of Combinations of Responses from Multiple-Response Data | Ronald J. Fehd | For the question '(Who, What, Why, When, Where, How)" the answer may be A, or B. Every SAS programmer wishes Ihe answer were A xor B, because PROC FREQ would calculate the answer: A: 17(35.4%), 8: 31(64.6%) N=48. Muttiple-response data where questions have the phrase 'check all that apply' appended 10 them present a challenge to the SAS programmer because lhe number of possible response combinations is two to the power of the number of responses. SAS programmers, according to the SASware Ballot ot 1996, desire a proclhat provides the answers: A: 17(29.3%) 8: 31(53.4%) AB: 10(17.2%) N=58. This paper examines Ihe SAS PROC FREQ output data set from a cross-tabulation and discusses the issues in constructing a similar data set for muttipfe-response data w~h one variable containing the combination of responses. Issue related to labeling, slorage and type of muhiple-response variables are discussed |
proc step, proc freq | 4 | |
| 4 | A Macro to Manage LIBNAME Assignments on Dual Systems | H. Ian Whitlock | One is often faced with the need to set up a SAS program to run on two or more systems, for example under VMS and Windows or in test mode and production. A tool box macro (i.e. one of a library of macros which have general use across a wide spectrum of people amd are automatically available through the autocall facility) solution is suggested. Assuming the system will be determined by &SYSSCP, the macro invocation for the first case might be %wlib ( name=main , vmsdsn=d60:[proj] , windsn=c:\proj ) In the second case a parameter KEY with a non null value is used to indicate the active "dsn" parameter. %wlib ( key=test , name=main * testdsn=c:\proj\test , proddsn=c:\proj\prOd The P ARMBUFF option is used to allow the user to determine the parameter interface within constraints. Both calls illustrated above refer to one macro. In addition to the code providing a useful macro, it gives a nice illustration of using the P ARMBUFF option | macro variable, macro call, %if-%then-%else, macro definition | 3 | |
| 5 | A Quick Introduction to PROC FORMAT | Steve Reading | The Fonnat Procedure enables users to quickly and easily improve the appearance of reports and graphs, process data unique to their computing environment, and dramatically improve the programming efficiency of their application. This Beginning Tutorial will provide real-life examples and tips on putting PROe FORMAT to work | proc step, format statement, proc format, proc print | 6 | |
| 6 | A Relational Database Primer for SAS Programmers | Paul Dalberth | Information Technology professionals still dispute the need for a relational database management system (RDBMS). The prevalence of these environments as repositories of crucial enterprise data, though, means that familiarity with them is often a prerequisite for successful SAS-based system development. This paper includes | dataset, key, proc sql, normalization, relational database, proc step, create table, proc append | 8 | |
| 7 | A SAS Program to Calculate and Plot Widths of (1-α)100% Confidence Intervals for Binomial Proportions | Maribeth H. Johnson, Mark S. Litaker |
The width of a confidence interval around the estimated proportion may be used as a measure of the precision of a measurement obtained in a study with a given sample size. A SAge program is presented which calculates the (1-a)100% confidence intervals of binomial proportions, using the F-distribution, for a range of sample sizes and proportions. Plots of confidence interval widths across the expected range of proportions which may be observed are an aid in determining the sample size necessary to achieve a desired level of study precision | confidence interval, sample, sample size, binomial distribution | 2 | |
| 8 | A SAS Programmer's View of the SAS Supervisor | H. Ian Whitlock | This tutorial answers questions like: As a DATA STEP programmer, what do I need to know about the SAS supervisor and why? How does the SAS supervisor process DATA STEP code? How does a SAS MERGE work? What about engines, indexing, and views? What happens when my DATA STEP code contains macro variables? What if my DATA STEP invokes a macro or is contained in a macro? For many years Donald Henderson or one of his colleagues gave a tutorial about the SAS Supervisor (SUGI 8, and 12 - 17). This tutorial builds on those earlier articles and adds the experience of the author |
macro facility, by group processing, where statement, automatic variable, proc step, dataset, character variable, proc print, set statement, proc sort, run, data step, macro variable, retain, proc sql | 11 | |
| 9 | A SASe Program Routine to Derive the Required Data Structure to Select Matched Pairs of Observations for Evaluating Quasi-Experimental Research Designs | Gunapala Edirisooriya | A misguided practice among educational researchers is the application of ANCOV A technique to equalize the preexisting differences between control [C] and experimental [E] groups in quasi experimental research designs. In educational research, this is particularly inappropriate when regression to the mean is more likely to observe. A better approach is to select matched pairs of observations from C and E, through ex-post stratified sampling. and to compare the gains-scores utilizing the dependent t-test. SAS<e program routines can be used to create an algorithm to select matched pairs of observations effectively and efficiently. Using pretest scores as a covariate I sorted C and E and merged them by a unique identifier variable. This resulted in a data set with matched pairs of observations, which can be used for evaluating project outcomes | regression analysis, proc sort, proc step | 5 | |
| 10 | An Introduction to ARCHfGARCH Modeling Using the AUTOREG Procedure | Donna E. Woodward | Many economic and financial time series exhibit a phenomenon known as heteroscedasticity, in which the variance of the series changes over time. The changes in variability are often based on recent past shocks, which cause large(small) fluctuations to cluster together. The recognition that this phenomenon could be used to more accurately define the forecast error variance led to the | 10 | ||
| 11 | ATTRDIFF: A Macro to Identify Differences in Variable Attributes | Frank C. Dilorio | proc step, macro variable, proc sql, macro conditional, macro definition | 3 | ||
| 12 | AutomaticaUy Documenting a SAS Data Set: Creating a Codebook with DOCSPGM | Steve James | proc step, proc format, macro variable, sample, proc contents, proc sql | 7 | ||
| 13 | Bootstrappping Confidence Intervals and Mean Variances | Bradley C. Martin, Jeffrey H. Dorfman |
bootstrap, confidence interval | 3 | ||
| 14 | Computing A DB-Optimal Design Augmentation Scheme Using PROC Il\1L (And Why SAS/QC Can't Do It) | Paul T. Savarese | In the design of experiments it is often desired to augment a given design with additional nms. The augmentation is done with respect to some optimality criterion such as D-optimality. The first such algorithm was DETMAX developed by the late Toby Mitchell which augmented points in a D-optimal fashion. D.-optimality involves optimizing with respect to a subset of the regressor variables, a scenario with particular applications in robust design. This paper will discuss a method for augmenting an experimental design in a D.-optimal fashion and illustrates an algorithm using PROC IML to implement the method. An explanation of why SAS/QC cannot perform a D.-optimal augmentation scheme will be given |
proc step, regression analysis, main effect, proc iml | 6 | |
| 15 | Contour Profiling to Optimize Multiple Responses Across Multiple Factors | John P. Sall | 5 | |||
| 16 | Creating and Linking Customized SCL Objects | Andrew A. Norton | data validation rules, relational database | 7 | ||
| 17 | Developing Applications & Development Tools Using Release 6.11 of the SAS System | Philip H. Van Dusen, Stuart B. Levine, Merry G. Rabb |
Since Version 6 of the SAS System was introduced, SAS/AF software has been a powerful device for the development of both custom applications and reusable tools. The latest release of the product in Release 6.11 has augmented that power with the addition of many new widgets and features. These new features add to the list of items that can be developed as reusable tools and stored in a tools repository, or toolbox. This can make a toolbox an even more useful resource for applications developers, but also can add to the challenge of maintaining it. This paper will discuss some of the new features, how they can be used, and some concepts to consider when developing and maintaining a tools repository |
catalog, catalog entry | 7 | |
| 18 | Developing Clinical Software Systems in SAS/AF | Carl R. Haske | Using SASJ/IF as a software development platform permits rapid applications development. SAS supplies several classes of objects that the developer can use to quickly prototype and implement systems. However, when developing appfications for use in the pharmaceutical industry, it is useful to augment these ctasses with additional classes that provide robust data management and reporting capabilities. Classes that provide generic tools to subset data, browse data, move data, and report data are useful in the clinical research environment. Managing clinical trials data requires the efforts of a large team of people including clinical data managers, data entry personnel, programmers, and statisticians. A system that enables concunrent access to data at several stages of the database life cycle enhances the overall work process and accelerates database development. STATPROBE, Inc. developed an integrated data management system, using SASIAF as the platform | clinical database, dataset, clinical data, data governance, audit trail, quality assurance, clinical trial, proc step | 10 | |
| 19 | Discriminant Analysis via Statistical Packages | Carl J Huberty, Laureen L. Lowman |
The two aspects of discriminant analysis are briefly reviewed: predictive discriminant analysis (PDA) and descriptive discriminant analysis (DDA). Use of three popular statistical packages (BMDpe, SASe, and SPSS~ to obtain computational | discriminant analysis, posterior probability, response variable, predictor variable, effect size, class variable, covariance, proc genmod, proc step, p-value, correlation, sample, mahalanobis distance, prior probability, outlier, proc discrim, proc princomp | 11 | |
| 20 | Engineering Efficiency into SAS Applications | Kirk Paul Lafler | With the ever increasing popularity of SASiIl Software among users and programmers, guidelines for its efficient use has widespread importance. This paper presents a collection of techniques for gaining efficiency when using SAS Software as an applications development tool. Areas receiving special consideration include program execution, 110, disk space, memory, and maintenance. Numerous practical and proven techniques will be examined using sample code to illustrate why some methods are better than others | proc sql, cpu time, dataset, drop statement | 6 | |
| 21 | EP90SAS: A Clinical Trials Data Management Tool | Philip James Busby | dataset, data step | 5 | ||
| 22 | Flexibility of SCL Usts | Scott Groussman | SCl lists. a new data structure implemented in SAS. version 6.07. provide many new programming techniques to SCl programmers. Through examination of a classic problem, the following list techniques and flexibility will be diSCUssed: Array Alternative - SCl lists can effectiv81y replace single and multi-dimensional arrays Dynamic Structure - list items can be dynamically added. deleted, and rearranged Direct Access - list items can be accessed by an index value or by a name Argument Passing - Lists can greatly simplify the passing of a large number of arguments Data Set Altemative - Lists make convenient tables ana can be accessed faster than data sets Data Sharing - List items can be stored in an environment list and made common to other routines Storage Option - Lists can be saved to disk for later retrieval | dataset, macro variable | 5 | |
| 23 | Frame Your View of Data with the SQL Procedure | Kirk Paul Lafler | The SQL view is a powerful feature of the relational model. Data becomes visible as a framed picture through which you can see infonnation. This paper presents the many features of an SQL view and how it can be used as a building block by users and application programmers alike. A tutorial approach will be used to illustrate the virtues found in building, using, and exploring the numerous practical applications ofviewing data | proc sql, order by, select, create view, group by, proc step | 4 | |
| 24 | FSREPORT - The Graphical PROC REPORT | Destiny Corporation (a company) | dataset, proc report, proc step | 10 | ||
| 25 | Generalized Linear Models (Logistic Regression), a Comparison of Available Options and Output from the Catmod, Probit, Logistic, and Genmod Procedures | Margaret A. Connolly | A baseline overview for a clinical depression study required many variables to be evaluated relative to a three factor model. Most efficacy items were continuous and were fit by an analysis of variance to compare two patient classifications, two treatment groups, and muttiple clinical study sites. Pair-wise interactions were also evaluated in this model. Our problem was to do corresponding evaluations of binary, ordered categorical and qualitative categorical items. Each of more than 300 items in the psychological profiles was to be summarized by one or two lines in a table. Would a single procadure be suitable for the three types of categorical outcome? Would the procedure(s) produce stable maximum likelihood solutions? How would sparse cells affect the estimates and how could over-specified models be detected in the extract table? Only Genmod resutts output to tables. Results tables of other procedures must be parsed from the output listing | proc step, logistic distribution, likelihood function, proc logistic, main effect, maximum likelihood estimation, sample, proc genmod, proc freq, anova, logistic regression, proc glm, regression analysis, response variable | 6 | |
| 26 | Generating Multiple Graphs from SAS/GRAPH in a PowerPoint-Compatible Format | Anne Hakenewerth | This tutorial describes how to automatically create multiple graphs in PowerPoint-compatible format | proc step, catalog entry | 1 | |
| 27 | Getting Started with PROC LOGISTIC | Andrew H. Karp | logistic distribution, logistic regression, predictor variable, regression analysis, proc step, proc logistic, response variable, odds ratio, proc reg, estimate, confidence interval, null hypothesis, data science, proc genmod | 5 | ||
| 28 | Integrating the SAS System with other Statistical Applications | George Matthews | As a statistical software consultant in an academic setting, I often find myself responding to questions about which statistical package is best for certain tasks. SAS users tend to want to see their data in SAS, partly because of its familiarity and partly because it offers a powerful data manipulation tool. In many academic settings, other statistical packages are utilized. This paper will explore the aspects of using Dynamic Data Exchange (DOE) as a means of integrating the SAS System with other windows-based statistical packages. A1temate | proc print, proc step | 4 | |
| 29 | Introduction to Functions & Arrays | Ken Currier | sas function, sysdate9, date variable, character variable | 10 | ||
| 30 | It Takes at Least Two to Tango - A Data Set Joining Primer | Caroline Babler | The ability to combine different types of data from muhiple hardware and software platforms is a major strength of the SAS system. SAS has blessed information analysts with a wealth of different options for joining data values from many different data structures. Therefore, an information analyst needs to determine who (parent data structures), what ("software envi ronment"), where ("hardware environment"), how (the tools available to perform the join) and why (the required contents of the child data set) of a join in order to determine which strategy to use. This paper will discuss the joining tech niques offered within the SAS system and give examples of their use | proc step, inner join, merge statement, proc sql, set statement, proc format, flat file, full join | 8 | |
| 31 | MACARRAY: A Tool to Store Dataset Names in a Macro "Array" | Frank C. Dilorio | macro variable, macro definition, macro put, proc print, proc step, proc sql | 3 | ||
| 32 | Macro for Pairwise Reliability Indicators | Carl M. Russell | The purpose of this SAS macro is to estimate reliability indicators applicable to pairwise measurements on experimental units. The output consists of two pages with the following information: intraclass correlation, summary statistics, 1-way and 2-way ANOVA, paired t-test, test of equal variances, Bradley-Blackwood test, and an AHman-Bland plot. The macro is easily applied to data sets with experimental units as rows simply by specifying pairs of variables | correlation, intraclass correlation, anova, paired t-test, proc mixed | 3 | |
| 33 | Macros for Calculating Block and Rolling Averages | Randy C. Finch, Muscle Shoals |
This paper describes two macros that work together to generate either block or rolling averages of user-specified variables in user· specified data sets. The code needed before executing the macros is also shown and explained | macro variable, time variable | 2 | |
| 34 | MACROS: Tips, Techniques, and Examples | Andrew M. Traldi | macro variable, proc step, proc print, keyword parameter, %macro parameters, macro facility, macro definition, macro loop | 9 | ||
| 35 | MATCH-MERGING: Techniques, Tricks, and Traps | Malachy J. Foley | Match-merging, or BY merging, is the most common merging technique used in SAS. Yet, how it works is not always obvious. This paper covers all the basics of how match-merging works, shows many of the technique'S nuances and subtleties, and demonstrates typical traps and how to avoid them | by group processing, merge statement, missing value | 8 | |
| 36 | Mission Impossible: The Trials of SAS Support in a Health Care Research Group | Miriam W. Rosenblatt | The goal of this paper is to share typical problems, challenges and solutions involved in SAS· support in an academic setting. Our department conducts clinical research studies in a teaching hospital, affiliated with Case Westem Reserve University. These grant-funded studies are designed by principal investigators who are physician-scientists; they are implemented by the Research Director who oversees the survey research group, the data management group, and the data collection team. As data manager, I oversee at least 7 - 10 studies at any given time. I used SAS for clinical research in the device industry for 8 years, and have spent 8 years in academia; thus I have insights from both sectors. When I made the transition from industry to academic research, I had to "throw the book away· on data handling practices I believed were immutable, and develop new approaches to ensure appropriate data rigor | clinical trial, data governance, clinical research | 6 | |
| 37 | Name Matching Using SAS List Input | Ron Vorp | Match-merging tiles based on persons' names can present some unique problems. Names may not be in a common format, names are easily misspelled, and individuals' names may be slightly different on the tiles. This paper describes coding using SAS(hI) UST input and other coding techniques to achieve approximately 99% accuracy on a name match between Miami-Dade Community College and Dade County Public School enrollment tiles | list input, pointer control | 3 | |
| 38 | National Committee for Quality Assurance HEDIS 2.5 Data Submission Forms: A Subclassed Extended Table Approach | Joe Whitehurst | Freimuth and Yindra presented a SUGI21 paper entitled, "Receiving and Distributing Data Nationally: A SAS Solution to HEDIS Reporting". In that paper they described how the SAS System was used to develop a client-server solution to HEDIS reporting. In this presentation, I will demonstrate a system with similar functionality but which incorporates some of the SAS System's Object Oriented Programming techniques for creating the user interface. Specifically, I will show how a subclassed Extended Table permits the creation of all of the data entry/display FRAME entrie.s without requiring any code specific to each FRAME, i.e., none of the data entry/display FRAMES have an associated SCL entry. This greatly simplifies the process of maintenance as well the development of new data entry/display FRAMES | data cleaning, dataset | 6 | |
| 39 | NO MORE MERGE - Alternative Table Lookup Techniques | Dana Rafiee | This tutorial is designed to show you several techniques available for pulling together multiple sets of data for the | proc step, lookup, data step, proc sql, array, by group processing, merge statement, modify statement, format statement, macro variable | 6 | |
| 40 | ODBC: Windows to the Outside World | S. David Riba | proc sql, proc step, sas log, select, dataset, excel | 10 | ||
| 41 | Printing with the SAS System under OS/2 or Windows - It's a Snap | Jeffrey M. Abolafia, Sally M. Muller |
options statement, %if-%then-%else | 9 | ||
| 42 | Probabilistic Record Linkage: A SAS OOP Solution | Gary W. Griffin | The need to match records from two separate files with no unique identifiers, such as social security number, is a problem often encountered in both public and private organizations. One solution to that problem is to use probabilistic record linkage techniques. The basic process involves calculating a probability for each comparison made with information from the record pairs and then accumulating those probabilities to determine the overall odds for a given pair of records. The odds provides evidence which can be used to make decisions in favor of or against the fact that the pair of records identifies the same individual, business, or other entity. In this presentation, I will discuss the development of a PC based probabilistic record linkage system using the SAS System's object oriented programming paradigm | record linkage, if-then-else | 6 | |
| 43 | PROC Report: Your Multi-Purpose Reporting Tool | Jim Snider | proc report, proc step, where statement, class variable, numeric variable, proc sql | 10 | ||
| 44 | PROC SQL - A SAS Programmer's Perspective | Deborah L. Skinner | proc sql, proc step, group by, sas programming, order by, proc print, where statement, insurer, proc sort | 7 | ||
| 45 | PRoe GMAP: How I Learned to Tolerate (And Almost Love) Annotating | Keith J. Brown | While the graphics procedures available in the SAS System provide an easy method of turning data into informative and eye-catching charts, graphs, and maps, fine-tuning that output by adding additional information is not as simple as pointing, clicking, and drawing. This presentation will focus on using macros and electronically-available data to create annotate datasets that modify the output from the GMAP procedure by connecting points, drawing circles, and adding labels |
proc step, sample | 9 | |
| 46 | Providing Data Analysis Support at a Major Research University using the SAS System | Joy Munk Smith | data science, sample | 6 | ||
| 47 | Quasicomplete Separation in Logistic Regression: A Medical Example | Madeline J. Boyle | Logistic regression can be used to model the relationship between a dichotomous outcome variable and explanatory variables that can be either dichotomous or continuous. When using the LOGISTIC procedure in the SAS/STAT software, one problem that can arise is complete or quasi complete separation of the data points. An example from a blunt intestinal injury study completed at a major metropolitan hospital in the southeast will be presented. The quasicomplete separation of the data points will be presented, as will the steps taken in an attempt to remedy the problem |
sample, logistic distribution, logistic regression, likelihood function, regression analysis, predictor variable, maximum likelihood estimation, response variable, sample size | 6 | |
| 48 | Real Time Data Collection with SAS System Applications | Bradley W. Klenz | 8 | |||
| 49 | Report Writing, SAS/GRAPH Creation, and Output Verification using SAS/ASSIST | Matthew J. Becker | proc step, proc print, bar chart, horizontal bar chart, adverse events, proc sort, proc tabulate, proc means, class variable, data cleaning, sas output | 8 | ||
| 50 | SAS Software Distribution Issues - An Academic Perspective | Gerardette M. Furlow | The SAS Software Consultant for a univeaity is often faced witb tbe tremendous !aSk of distributing !be SAS System to faculty, staff, and students of !be university. These faculty. staff, and students genemlIy request !be SAS System for a variety of operating systems. As !be SAS System continues 10 grow, !be SAS Software Consultant must decide which software distribution methods will work !be best in a heterogeneous environment. This paper will review !be methods used by !be Computing Center (CC) at North Carolina Slate University (NCSU) to distribute !be SAS System to campus users | grid computing, order by | 3 | |
| 51 | SAS/OR Can Help Me Lose Weight?! AKA, A SAS/OR PROC LP Tutorial | Douglas L. McAllaster | This paper has two parts. Part one is a tutorial on SASlOR's (procedure for Linear Programming) PROC LP. This tutorial uses a seminal prototype, the diet problem, to answer these questions: (1) What is a linear program? (2) How can I model my diet as an LP? (3) What is an objective function? (4) What are constraints? (5) How does SAS/OR calculate a solution? (6) What if I change my mind? Part two is an brief overview of the math programming capabilities of SAS/OR |
proc step, linear programming | 9 | |
| 52 | SAStistics 101 | Robert E. Johnson | It is true that SA~ doesn't stand for Statistical Analysis System anymore, but there is plenty of statistics in SAS software. If you work with SAS software you will probably have to crunch some statistics from time to time. Base SAS procedures produce the most common statistical summaries, and more. In this tutorial, an overview of these procedures will be presented along with some examples. What is the difference between a standard deviation and a standard error? What is the difference between Pearson and Spearman correlations? What is a Chi and why do we square it? These and other burning questions will be addressed. Words of caution about using and interpreting SAStistical procedures will be given throughout the tutorial | sample, correlation, proc calis, proc freq, proc step, standard deviation, bar chart, sample size, null hypothesis, pearson correlation, spearman correlation, proc means, proc univariate, random sampling, histogram | 8 | |
| 53 | Screen Control Language - the Undercover Sleuth of FSEDIT* | Robert F. Davis | Entering data with the SAS'" system can be enhanced by using Screen Control Language (SCL) programming with the FSEDIT procedure. This presentation outlines a number of useful SCL programming techniques that facilitate data entry and database management. In data entry, the topics covered will include double entry validation, using predetermined lists to check for data validity, automatic filling in of data fields, designation of required fields, and defining variable calculations. For management of databases that are accessible by multiple users, programming methods will be presented that will allow for the logging in of users, the validation of user and data entry permissions, and generation of audit trails |
numeric variable, where statement, proc step | 11 | |
| 54 | Self-Modifying SAS Programs: A DATA Step Interface | S. David Riba | There are many situations where It Is useful to have a ~ program modify Itself during execution. Some examples include: conditionally execute a macro based on the data in a SAS dataset conditionally execute a procedure when there is no data in a SAS dataset generate in-line SAS program code based on the contents in a SAS dataset write SOL statements for the SOL Pass-Through Facility "on-the-fIy" This paper explores a little-known routine in the SAS System that allows a SAS program to write SAS code "on-the-fIy" during execution. Since CALL EXECUTE Is a DATA STEP CALL routine, the full capabilities of the DATA STEP can be applied to conditionally generate SAS program statements while the program is executing. If you have ever written program code to a temporary file and then %INCLUDEd it back into your program, you need to take a clOser look at CALL EXECUTE. The paper Will discuss the uses of CALL EXECUTE with specific examples baSed on real world situations |
call execute, dataset, proc step, macro facility, proc sql, sample, call symput, proc print, macro variable, excel, macro definition | 8 | |
| 55 | Simulation of Data for Monte Carlo Studies of Prevalence Estimation in Two-Phase Cross-Sectional Epidemiologic Studies | Mark S. Litaker | Estimators of prevalence in two-phase epidemiologic studies, in which data are available from the results of a screening test for disease, but definitive diagnoses are available only for subsamples of those in each of the screening categories, are typically based on a stratified binomial model, and a weighted average of stratum specific prevalences. Estimators based on a multinomial model, or on iterative techniques, may provide more precise prevalence estimation in some situations by using the entire sample in the calculation of the point estimate, rather than using only those observations which receive both tests. Simulation studies are a useful tool in evaluation of the bias and stability of alternative . estimators, since the true values of prevalence and the sensitivity and specificity of the screening test are unknown in actual practice | sample, binomial distribution | 4 | |
| 56 | sl4tistia | Dale Preston | poisson regression, regression analysis, poisson distribution, likelihood function, relative risk, hazard function, time-dependent covariate, proc phreg, survival analysis | 7 | ||
| 57 | Software Validation and Testing | Andrew T. Kuligowski | You'Ve sat through constant design meetings. You'Ve endured countless requests for "just one more little change". You even managed to find a creative solution to that nagging technical problem. But, you persevered, and despite all of the obstacles, you've managed to eliminate the final syntax error in your newest SAS" routine. Time to sit back and relax - uh, not quite ... This tutorial will address the issues of testing your routines and validating your data. The primary focus will be on techniques to ensure comprehension of your input data - SASLOG messages such as NOD: MEl!GE statement has more than one data set with repeats of BY vaJ.ues. imply that there may be gaps in your knowledge of your data! Special emphaSis will be placed on the use of ad-hoc queries to assist in finding data anomalies that can cause problems with your BAS routine |
numeric variable, proc step, input statement, out=, merge statement, proc means, data cleaning, index, infile statement, in=, sample, put statement | 9 | |
| 58 | Some Strategies for Efficiently Producing Graphs of Clinical Trials Data | Michael A. Riddle | confidence interval, proc step, clinical trial, proc gplot | 6 | ||
| 59 | Sophisticated Data Linkage Using SAS | Philip J. d'Almada | A by-product of the very-Iow-birthweight project Prevention (CDC) was the development of a sophisticated iterative linking program designed and developed in base SASe software, release 5.18, to link two databases. The success of the program stemmed from the properties of four SAS functions, INDEX, SCAN, SUBSTR and TRIM. The master database was a SAS data set of about 3,500 records and stored on mainframe disc. About two-thirds of these records needed to be linked. The transaction database consisted of two years of raw data stored as two files on tapes and each file containing about 100,000 records. The program was applied twice because of the raw files which were therefore linked to annualized subsets of the master data set created by the SET and IF statements. Within each application of the program, each master data subset was further dichotomized with the IF statement according to whether or not a key linking variable had missing values | master data management, dataset, transaction data, data cleaning, sas function, by group processing, if-then-else | 6 | |
| 60 | Stepwise Regression as a Multiple Comparison Procedure | Rodney Sparapani | Stepwise Regression is a valuable tool for exploratory model building. This paper will examine how Stepwise Regression fits into the Multiple Comparisons paradigm. SAS will be used to demonstrate how these models will be handled in practice. Keywords: Multiple Comparisons, Forward Selection, Backward Elimination, Stepwise Regression, Step-down Procedure. Step-up Procedure | stepwise selection, regression analysis, backward selection, forward selection, null hypothesis, type i error | 3 | |
| 61 | TEN GOOD REASONS TO lEARN SAS SQl | Sigurd W. Hermansen | $AS PROC SQL works /nterclumgeably with and complements DATA STEP programs and other procedures, but does it offer any new capabl/lJles? Some say no. This tutorial presents a series qf exomples of PROC SQL solutions to problems that would pr<1YB very difficult or cumbersome /0 implement without SQL Examples intrOduce the use of table and column aliases; catalogued views; imine views; hast-variable references; summary junctions applied by group; and compkx joins. Practical applications qf SQL constructs IIIllk8 a convincing case for learning these usejul tools. A few examples of some dato step constructs that prove difficult to mDlCh in SQL round out the |
proc sql, proc step, dataset, sample, macro variable, having, where statement, sas programmer | 5 | |
| 62 | The Data Warehouse: Roles, Responsibilities, and Functions | Christopher Toppe | A data warehouse is a very complex operation, one that doesn't fit the traditional system life cycle model. Whether a warehouse is 200 megabytes or 200 gigabytes, in building and operating it there are many roles, responSibilities, and functions that must covered. Roles include builders, providers, maintainers, miners, and analysts, to name a few. Responsibilities include concepts such as data cleansing, data integrity, metadata creation, and data transportation. Functions include warehouse administration, warehouse load/refresh, and information extraction. These topics are covered in this paper With the goal of helping you understand the design issues around a warehouse project, and how software helps these roles, responsibilities, and functions to be performed. A Data Warehouse Defined There are many ways to describe a data warehouse (OW), each with a slightly difference focus. Among my favorites are: * A OW is a stable and predictable source for data used in decision making | data warehouse, credit card, data science | 10 | |
| 63 | The Elements of SASe Programming Style | Frank C. Dilorio, Jean Cocteau |
proc step, missing value, proc sql, if-then-else, macro variable, put statement, proc genmod | 5 | ||
| 64 | The SAS System in a Data Warehouse Environment | T. Randall Betancourt | The purpose of this paper is to provide the reader a general overview of the strategies employed in implementing a data warehouse and the role the SAS System plays in these various steps. While this is not an in-depth methodology, it is an attempt to outline the various steps one wouid normally go through to implement a data warehouse. In order to make clear all of the terms and acronyms used in this paper, they will be underscored and defined in the glossary at the end of this paper | dimension table, data warehouse, proc sql, fact table, relational database, data standard, star schema, foreign key | 12 | |
| 65 | The Utter "Simplicity?" of the TABULATE Procedure - The Final Chapter? | Daniel E. Bruns | proc tabulate, proc step | 6 | ||
| 66 | The World Wide Web and SAS | David F. Harris | proc step, proc gchart | 5 | ||
| 67 | Using HTML as a SAS Documentation Tool | Paul L. Marsh | Classic documentation presents static information on a linear media - paper. Such presentation is less effective when complex interwoven relationships must be shown. This paper will show how HTML (HyperText Markup Language) is used as a method around the interwoven relationship problem | dataset, proc format, flat file, proc step | 7 | |
| 68 | Using SAS to Catch White Collar Criminals: A Collusion Detection System | Randy Lawton, Susan L. Schwartz |
Info Tech developed SENTRYTM, a Collusion Detection System, to help investigators determine the likelihood of collusive bidrigging behavior in the sealed bid marketplace. The sealed bids are used by public agencies to purchase many commodities or services. SENTRY is a PC application. Analysis takes place on the desktop, with minimal or no outside assistance from expert consultants, at least during the preliminary phase of an investigation. SENTRY was developed entirely in SAS and is available in OSl2iS, MicrosoftiS Windows NTTM and WindowsiS 95 versions | catalog, dataset | 5 | |
| 69 | Using SAS To Load a Data Warehouse, Write HTML, and Send Analyses to the World-Wide Web - All in Real Time | Jay Jacob Wind | GlobalOne Voice Network Planning (formerly Sprint Intematiooal) canies several million international phone ca\Is each month. Traffic managers in eight countries need 10 know call volumes and forecasts as soon as pDSSlble, 10 plan how 10 allocate equipment 10 maximize peJfonnanc:e. GlobalOne's Qtfshore Traffic Analysis Management System (OTAMS) receives 24 hourly data files each day. A SAS program, looping endlessly, tests whether new hourly data has arrived from any of the eight countries. If so, the program warehouses the new data in a SAS hblllIY. A SASIEIS application summarizes the real-time data, appends it 10 a SUDl1lIlI1Y file, and produces bar charts, time"ries plots, forecasts, data exIJ3Cts, and printed reports. The EIS automatically uploads its outputs to our Intranet Web Site - virtually in real time. This paper illustrates the system and explains how we built it using SAS software | class variable, bar chart, dataset, proc step, sample, excel, cdisc | 10 | |
| 70 | Using SAS/AF FRAME Entries for Data-Driven Menu Systems | Stuart B. Levine | One basic application of FRAME technology is a menuing system. A menu can further be enhanced by being developed to populate itseH from a data set. This makes changes to the menu dependent on maintaining a data set rather than having to modify code. This Coder's Comer session will demonstrate an example of this type of menu application | 2 | ||
| 71 | Using SASe ARRAYs: An Introduction to Easy Recodes | Francis J. Kelley | array, macro variable | 3 | ||
| 72 | Using SASe to Write a LlSREL Program | Francis J. Kelley | correlation, proc corr, covariance, proc step, macro put, standard deviation, %if-%then-%else, macro loop, macro variable | 8 | ||
| 73 | Using the PIPE and FILEVAR= Options | Richard D. Langston | This paper anempt& to describe two very useful features of the INFILE and FILE statements Within the SAS" System. These features are the FILEVAR= option and the PIPE option. THE FlLEVAR= 0P110N The FlLEV AR= option allows you to specify a character variable whose value is used to detemtine the name of the file to be processed. Nomtally, the name of the file on an INFILE or FILE stalement must be hard-coded. But since the INFILE and FILE stalemenfs are executable stalements, the DATA STEP can examine the values of the FILEVAR= variable to detemtine the name of the file to open. If the file name is the same name as the last time that same INFILEIFILE stalement was seen, no change occurs and the previously opened file will continue to be used. But if the file name differs from the last time the same INFILEIFILE statement was executed, the current file is closed and the newly named file is opened. Any time the RLEVAR= FILENAME changes, a log message repons this change |
infile statement, conditional do loop, file statement, dataset | 3 | |
| 74 | Using the SAS System to Assess the Re6ability of Gain Scores | Tun Penny | correlation, proc printto | 8 | ||
| 75 | VMS Environment and SAS Language Applications: Getting the Best of Both Worlds | M. Rita Thissen | This paper reviews various features of the VMS operating system and its companion command language with respect to developing and implementing batch SAS programs. Specific examples include moving information between VMS symbols and SAS macro variables. referencing libraries or files through logical equivalence names, and accessing data in indexed ASCII files. Program examples are drawn from survey data processing applications | batch job, data governance, sample, dataset, data wrangling, libname statement, macro variable | 11 | |
| 76 | You Want Me to Move How Many Thousand Files from MVS to UNIX? | Kenneth A. Hardy, Arturo Barrios, Sally M. Muller |
The University of North Carolina at Chapel Hill's Institute for Research in Social Science maintains one of the largest social science data warehouses in the country. Its collection of over 25,000 files, totaling over 225 gigabytes, has been stored on disk and tape on the campus's academic mM mainframe for many years. In January of 1995, UNC's Office of Information Technology announced that all mMlMvs mainframe services would be withdrawn from public use at the end of December, 1995 and that central computing services would shift to a distnbuted UNIX environment. 'Ibis meant that the entire archive had to be migrated from the mM mainframe to an E-mass Datatower running FileServ software on a Convex 3480 before the 1995 fall semester. The task was complex because file sizes ranged from a few hundred bytes to over 2 gigabytes. Many files were in formats such as SAS V5.18 format libraries, early version SPSS system files and OSIRIS data dictionaries | proc step, proc upload, batch job, sample, sas library, input statement, sas base, sas batch, dataset, error message | 11 |
This site serves as a convenient hosting location and does not work as a publisher. All copyrights belong to their respective owners.
The information on this site is provided for general reference purposes only. Whilst every effort is made to ensure that the site is up to date and accurate, no warrant, nor any responsibility or liability for, the accuracy or completeness of the content or for any loss which may arise from reliance on information contained in this site is provided. Links to other sites are provided for your convenience but no responsibility or liability for the content of those sites or of any external site which links to this site is accepted. References to any specific commercial product, process, service, or corporation are also for information only, and do not constitute endorsement, recommendation or favoring.
SAS is a registered trademark of SAS Institute Inc. SAS, Statistical Analysis System, and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration.
HOME
QUICK SEARCH
AUTHORS
KEYWORDS
HELP
BUGS