HOME QUICK SEARCH AUTHORS KEYWORDS HELP BUGS

MWSUG 2025 Papers - Index

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

# Title
×
Authors
×
Abstract
×
Keywords
×
Extras Pages
1 Advancing Research in Rare Disease Using SAS Viya Kelly Olano,
Pierce Kuhnell,
Laurie Smith
Presentation adverse events, sas base, sas programmer, data science, adam dataset, clinical trial, pharmaceutical industry, cdisc source 18
2 An analysis of Emergency Department Visits for the 10 Health Division Regions across the US during the period 2018 2025 Baoyuan Zhou Presentation poisson distribution, poisson regression, binomial distribution, correlation, intraclass correlation, raw data, seasonality source 24
3 Applications of PROC COMPARE to Parallel Programming and other projects Jayanth Iyengar PROC COMPARE is a valuable BASE SAS procedure which is used heavily in the Pharma industry and other areas. By default, the capability of PROC COMPARE is to reconcile two data sets to determine if they have equivalent sets of records and sets of variables. In the clinical field and elsewhere, PROC COMPARE is often used to validate data sets in projects which involve parallel programming, where programmers independently perform the same tasks. In this paper, I will discuss the role PROC COMPARE plays in different SAS tasks, including DATA STEP merges, parallel programming, generation data sets, and more proc compare, proc step, dataset, sas log, missing value, sas output, numeric variable, proc sql, length statement, sas base, master data management, data cleaning source 21
4 Automated double data entry comparisons Melinda MacDougall Presentation proc contents, proc sql, proc step, clinical research, variable list source 10
5 Benefits, Challenges, and Opportunities with Open Source Technologies in the 21st Century Kirk Paul Lafler,
Ryan Paul Lafler,
Joshua J. Cook,
Stephen B. Sloan,
Anna T. K. Wade
Organizations across the globe are experiencing a paradigm shift in the software landscape. With the explosion of new technologies, the growing role of open-source solutions, and the creative ways diverse tools coexist, today's environment presents both exciting opportunities and complex challenges. This session explores the benefits, challenges, and opportunities of open-source technologies in the 21st century. We'll examine how user communities are navigating critical issues such as integration, compatibility, security vulnerabilities, intellectual property, warranties, and inconsistent development practices. Attendees will gain insights into the current state and application of Python, R, SQL, database systems, cloud computing, software standards, and the collaborative spirit that drives global open-source communities. Join us for an informative discussion on how open-source software is shaping the future of technology, collaboration, and innovation worldwide data integration, data science source 8
6 Code Smarter, Not Harder: The 5 C's of ChatGPT for the SASsy Professional Kirk Paul Lafler,
Charu Shankar
In today's fast-paced analytics world, efficiency is everything. This paper explores how ChatGPT and SAS complement each other across the 5 C's to enhance productivity: Communicate - Automate structured email reports with SAS, or use ChatGPT for dynamic, polished messaging. Learn when to use each for maximum impact. Code - Speed up SAS programming with ChatGPT's syntax suggestions, debugging tips, and code generation-all while maintaining best practices. Collaborate - Use SAS for version control and shared repositories, while ChatGPT streamlines teamwork with summaries, documentation, and code explanations. Customize - Enhance efficiency with SAS macros and fine-tune ChatGPT prompts for tailored reporting and automation. Create - Harness AI-driven insights for problem-solving while ensuring accuracy and compliance in SAS analytics. Featuring hands-on demos and real-world examples, this session will equip you with practical strategies to code smarter, not harder excel, proc step, dataset, proc sql, inner join, proc hpsplit, sample, nominal variable, create table, ods excel, correlation, output delivery system, proc freq, data cleaning, proc means, logistic distribution source 49
7 Conducting Survival Analysis in SAS using Medicare Claims as a Real-world data source Jayanth Iyengar Applications of Survival analysis as a statistical technique extend to longitudinal studies, and other studies in health research. The SAS/STAT package contains multiple procedures for performing and running survival analysis. The most well-known of these are PROC LIFETEST and PROC PHREG. As a data source, Medicare claims are often used in Real-world evidence studies and observational research. In this paper, survival analysis and the SAS procedures for performing it will be explored, and survival analyses will be conducted using Medicare claims data sets to assess patient's prognosis amongst Medicare beneficiaries proc step, cpu time, survival analysis, proc phreg, survival function, proc lifetest, hazard ratio, predictor variable, proc sql, insurance claims, chi-square test, dataset, nominal variable, censoring, rank test, likelihood function, proc sgpanel, exploratory data analysis, data science, probability distribution, binary variable, hazard function, log-rank test, lookup, maximum likelihood estimation, proc means, proc sgplot, proc sort, create table, if-then-else, wilcoxon test, regression analysis, proc freq source 32
8 COVID-19 Explored Using SAS and ODS Graphics: InfoGeographic and Data Graphic Analysis & Pictures LeRoy Bessler Presentation data analyst, data visualization, sas output, sas programmer, excel source 78
9 Creating Custom Excel Spreadsheets with Built-in Autofilters Using PROC REPORT and ODS EXCEL Kirk Paul Lafler Spreadsheets have become one of the most popular and successful data tools ever created, with current estimates showing more than 750 million EXCEL users worldwide. Their widespread adoption can be attributed to simplicity and ease of use, which make them accessible to a broad audience. Over time, additional features have expanded the functionality and value of spreadsheets, including collaborative capabilities, customization, data manipulation, visualization techniques, mobile accessibility, automation of repetitive tasks, integration with other software, advanced data analysis, and filtering capabilities. This paper focuses on one of these features: filtering with autofilters. Autofilters allow users to quickly find data of interest by making selections from lists of text, numeric, or date values. An example application will be presented that demonstrates how to create a custom EXCEL spreadsheet with built-in autofilters using the SAS Output Delivery System (ODS) EXCEL destination and the REPORT procedure excel, proc report, proc step source 6
10 Dashboards Made Easy Using SAS Software Kirk Paul Lafler Organizations worldwide develop business intelligence and analytics dashboards - often referred to as enterprise dashboards- to display the status of point-in-time metrics and key performance indicators (KPIs). When designed effectively, dashboards integrate real-time data from multiple sources to highlight critical insights through numbers, tables, statistics, metrics, performance scorecards, and other essential content. This paper explores the essential rules of "good" dashboard design, common metrics used in dashboards, and the application of best-practice programming techniques to ensure dashboards are quick to build, efficient to maintain, and easy to use. Using SAS software, attendees will learn practical programming techniques to create real-world dashboards with Base SAS tools including PROC SQL, macros, the Output Delivery System (ODS), ODS HTML, ODS EXCEL, ODS Layout, ODS Statistical Graphics, PROC SGPLOT, PROC SGPIE, and other SAS technologies proc step, proc report, excel, proc freq, proc sgplot, proc format, proc sort, proc univariate, title statement, end, proc template, order by, user-defined format, key performance indicator, output delivery system, business intelligence, proc contents, proc sql source 42
11 Data Literacy 101: Understanding Data and the Extraction of Insights Kirk Paul Lafler Data is everywhere and growing at extraordinary rates, making a strong foundation in data essentials more important than ever. This paper introduces the fundamentals of data literacy, highlighting how to derive meaningful insights and apply them to decision-making tasks. Attendees will: ✓ Learn about the types of data (nominal, ordinal, interval, and ratio). ✓ Understand how to assess the quality and reliability of data. ✓ Explore datasets using effective visualization techniques. ✓ Apply selected statistical methods to describe, summarize, and analyze data. By the end of the session, participants will be equipped with practical skills to interpret data confidently and use it to support evidence-based decisions dataset, data science source 9
12 Dating for SAS Programmers Joshua M. Horstman Every SAS programmer needs to know how to get a date... no, not that kind of date. This paper will cover the fundamentals of working with SAS date values, time values, and date/time values. Topics will include constructing date and time values from their individual pieces, extracting their constituent elements, and converting between various types of dates. We'll also explore the extensive library of built -in SAS functions, formats, and informats for working with dates and times using in -depth examples. Finally, you'll learn how to answer that age-old question... when is Easter next year? date variable, sysdate9, datetime, time, macro variable, date and time functions, options statement, datepart, automatic macro variable, user-defined format, dhms, sas programmer, macro function source 13
13 ExCITE-ing! Build Your Paper's Reference Section Programmatically Using Lex Jansen's Website and SAS Louise S. Hadden One challenge in writing a SAS White Paper is creating the perfect reference section, properly acknowledging those who have inspired and paved the way. Luckily, clever use of such tools as Lex Jansen's website, SAS's ability to read in and manipulate varied data sources, and Microsoft Word citation manager, every author can succeed in proper referencing in their white papers. This paper and ePoster will demonstrate how to accomplish this goal source 9
14 Feature Selection and Classification Using Fuzzy Logic Ross Bettinger We investigate the use of fuzzy logic as applied to feature selection and classification. Fuzzy logic, a gen- eralization of Aristotelian logic, can be useful in situations where there is imprecision or vagueness in the problem domain. Fuzzy logic is applied to transform input data into fuzzy sets that are then suitable for processing by a feature selection algorithm. A fuzzy entropy measure is used to perform classifica- tion using a similarity classifier. SAS/IML was used to perform all computations. Keywords Classification, crisp set, data dimension, feature selection, fuzzy entropy, fuzzy logic, fuzzy membership, fuzzy set, fuzzy variable, Łukasiewicz structure, membership function, similarity classifier sample, feature selection, data cleaning, logistic regression, credit card, logistic distribution, regression analysis, training set, key performance indicator, confusion matrix, numeric functions, correlation source 39
15 Fifteen Functions to Supercharge Your SAS Code Joshua M. Horstman The number of functions included in SAS software has exploded in recent versions, but many of the most amazing and useful functions remain relatively unknown. This paper will discuss such functions and provide examples of their use. Both new and experienced SAS programmers should find something new to add to their toolboxes anyalpha, if-then-else, character functions, tranwrd function, notalpha, sas programmer, translate, whichn, missing value source 8
16 From %Let to %Local; Methods, Use, and Scope of Macro Variables in SAS Programming Jayanth Iyengar Macro variables are one of the powerful capabilities of the SAS system. Utilizing them makes your SAS code more dynamic. There are multiple ways to define and reference macro variables in your SAS code; from %LET and CALL SYMPUT to PROC SQL INTO. There are also several kinds of macro variables, in terms of scope and other ways. Not every SAS programmer is knowledgeable about the nuances of macro variables. In this paper, I explore the methods for defining and using macro variables. I also discuss the nuances of macro variable scope, and the kinds of macro variables from user-defined to automatic macro variable, call symput, macro put, proc sql, into, automatic macro variable, sas log, proc step, macro definition, symbol table, cpu time, macro facility, macro parameter, call symputx, local symbol table, macro quoting function, compilation phase, put statement, macro trigger, global symbol table, variable, %macro parameters source 23
17 From Muggles to Macros: Transfiguring Your SAS Programs With Dynamic, Data-Driven Wizardry Joshua M. Horstman,
Richann J. Watson
Presentation macro variable, proc sql, variable list, macro facility, proc step, automatic macro variable, macro loop source 52
18 From Word Clouds to Phrase Clouds to Amaze Clouds: A Data-Driven Python Programming Solution To Building Configurable Taxonomies That Standardize Troy Martin Hughes Word clouds visualize the relative frequencies of words in some body of text, such as a website, white paper, blog, or book. They are useful in identifying contextual focus and keywords; however, word clouds- as commonly defined and implemented -suffer numerous limitations. First, multi -word phrases such as "data set" or "Base SAS" are unfortunately segmented into single words-"data," "set," "Base," and "SAS." Second, desired capitalization often cannot be specified, such as visualizing "PROC PRINT" even when its lowercase "PROC PRINT" is observed in text or code. Third, spelling variations (e.g., single and plural nouns, various verb conjugations, abbreviations and acronyms) are not mapped to each other. Similarly, and fourth, comparable words or phrases (e.g., "PROC PRINT" and "PRINT procedure") are not mapped to each other, representing a further lack of entity resolution. This text and its Python Pandas solution seek to overcome data quality, data integrity, and data standardization issues that plague word clouds, by defining and applying configurable taxonomies -data models that can impart more meaning and precision to ultimate word/phrase cloud visualizations. The result is a phrase cloud that amazes-an amaze cloud! proc freq, proc fcmp, proc step, sas function, entity resolution, macro put, data step, dataset, proc print, relative frequency source 12
19 Geocoding with the Google Maps API: Using PROC FCMP To Call User-Defined SAS and Python Functions That Geocode Coordinates into Troy Martin Hughes Software interoperability describes the ability of software systems, components, and languages to communicate effectively with each other, and must be prioritized in today's multilingual and open-source development environments. PROC FCMP, the SAS Function Compiler, enables Python functions to be wrapped in (and called from) SAS user -defined functions (and subroutines), and the full panoply of SAS environments supports FCMP-including SAS Display Manager, SAS Enterprise Guide, SAS Studio, SAS Viya, and the latest Cary show pony, SAS Workbench . Productivity and the pace of development are maximized when existing open-source code-such as Python user-defined functions-can be run natively from a Python interactive development environment (IDE) rather than having to be needlessly recoded into the Base SAS language. This text demonstrates SAS and Python user-defined functions that collaboratively call the Google Maps Platform APIs to geocode street addresses into latitude/longitude coordinates, and to calculate driving distances between locations. The scenarios in this text demonstrate the application of the Google Maps Platform for clinical trials research, and the technical concepts are adapted from Chapter 8 of the renowned SAS Press book: PROC FCMP User -Defined Functions: An Introduction to the SAS Function Compiler. (HUGHES, 2024) proc fcmp, clinical trial, sas function, proc step, output source 14
20 GIS Challenges of Cataloging Catastrophes: Serving up GeoWaffles with a Side of Hash Tables to Conquer Big Data Point-in-Polygon Determination Troy Martin Hughes The GINSIDE procedure represents the SAS solution for point-in-polygon determination-that is, given some point on earth, does it fall inside or outside of one or more bounded regions? Natural disasters typify geospatial data -the coordinates of a lightning strike, the epicenter of an earthquake, or the jagged boundary of an encroaching wildfire-yet observing nature seldom yields more than latitude and longitude coordinates. Thus, when the United States Forestry Service needs to determine in what zip code a fire is burning, or when the United States Geological Survey (USGS) must ascertain the state, county, and city in which an earthquake was centered, a point-in-polygon analysis is inherently required. It determines within what boundaries (e.g., nation, state, county, federal park , tribal lands ) the event occurred, and confers boundary attributes (e.g., boundary name, area, population) to that event. Geographic information systems (GIS) that process raw geospatial data can struggle with this time -consuming ye t necessary analytic endeavor-the attribution of points to regions. This text demonstrates the tremendous inefficiency of the GINSIDE procedure, and promotes GeoWaffles as a far faster alternative that comprises a mesh of rectangles draped over polygon boundaries. This facilitates memoization by running point -in-polygon analysis only once, after which the results are saved to a hash object for later reuse . GeoWaffles debuted in the 2013 white paper Winning the War on Terror with Waffles: Maximizing GINSIDE Efficiency for Blue Force Tracking Big Data (Hughes, 2013), and this text represents a n in-memory, hash-based refactoring. All examples showcase USGS tremor data as GeoWaffles tastefully blow GINSIDE off the breakfast buffet-processing coordinates more than 25 times faster than the out-of-the-box SAS solution! cpu time, hash table, lookup, dataset, sas library, macro loop, big data, %if-%then-%else, proc gmap, data visualization, macro definition, proc step, macro variable, proc format source 28
21 Have a Date with ISO? Using PROC FCMP to Convert Dates to ISO 8601 Richann J. Watson Programmers frequently have to deal with dates and date formats. At times, determining whether a date is in a day-month or month-day format can leave us confounded. Clinical Data Interchange Standards Consortium (CDISC) has implemented the use of the International Organization for Standardization (ISO) format, ISO 8601, for datetimes in SDTM domains, to alleviate the confusion. However, converting "datetimes" from the raw data source to the ISO 8601 format is no picnic. While SAS has many different functions and CALL subroutines, there is not a single magic function to take raw datetimes and convert them to ISO 8601. Fortunately, SAS allows us to create our own custom functions and subroutines. This paper illustrates the process of building a custom function with custom subroutines that takes raw datetimes in various states of completeness and converts them to the proper ISO 8601 format proc fcmp, proc step, return, sas log, sample, time., numeric variable, cdisc source 15
22 Highlighting the Differences: PROC COMPARE in Excel Jane Eslinger PROC COMPARE is great for examining the differences across two data sets-but the default output doesn't always paint the full picture. Though the printed report is informational, its wordy presentation doesn't facilitate the identification of patterns in the differences within and across variables. This paper shows how to turn raw comparison data from the OUT= options in PROC COMPARE into a polished spreadsheet that strategically uses color to highlight the details and make variable-level differences easy for the reviewer to spot proc compare, proc step, binary variable, excel, numeric variable, proc report, character variable, macro parameter, do loop, data cleaning, macro variable, macro loop source 12
23 How to Modify SAS 9 Programs to Run in SAS Viya Danny R. Modlin forward selection, proc step, likelihood function, null hypothesis, logistic distribution, proc logistic, roc curve, sas viya source 40
24 Large-Scale Time Series Forecasting in Model Studio Danny R. Modlin time series analysis, champion model, time series data, sas viya, data mining, by group processing, forecast horizon, feature selection, predictor variable, score code, seasonality source 39
25 Last Observation Carried Forward (LOCF) in Longitudinal Clinical Studies: Adopting a Functional Approach to Imputing Missing Values Using PROC FCMP, the SAS Function Compiler Troy Martin Hughes Last observation carried forward (LOCF) is a ubiquitous method of imputing missing values in longitudinal studies, and is commonly implemented when a subject (i.e., a patient or participant) misses a scheduled visit, and data cannot be collected (or generated). In general, the last "valid" value from a previous visit is retained for the later visit on which the data could not be obtained, and this conservative estimation succeeds in cases where the actual value would have been little changed. Nuanced criteria may stipulate which prior values count as "valid" (e.g., after the start of treatment) as well as for how long (e.g., how many days, visit weeks, consecutive missed visits) a value can be used to impute other values . Given these complexities, LOCF solutions implemented in SAS historically adopt a procedural approach, and often require multiple DATA steps and/or procedures to impute data both across observations and within subjects. Con ceptually, however, a functional approach can be envisioned in which LOCF could be calculated using a function call-that is, delivering the same functionality through a single line of code while hiding (abstracting) the complexity of the calculation inside the function's definition. The FCMP procedure can deliver this functionality, enabling SAS practitioners to build user -defined functions-even those that perform inter -observation calculations -and this text demonstrates a user -defined subroutine that dynamically calculates LOCF while relying on CDISC and A DaM standards, data structures, and nomenclature. The software design concepts herein are adapted from the renowned SAS Press book: PROC FCMP User-Defined Functions: An Introduction to the SAS Function Compiler . (Hughes, 2024) imputation, proc fcmp, missing value, data validation rules, last observation carried forward, retain, cdisc source 9
26 Logistic Regression Odyssey on a Small Sample Due to Rare Cancer Brandy R. Sinco,
Jessie Dalman,
Tasha Hughes
Presentation logistic regression, maximum likelihood estimation, regression analysis, logistic distribution, likelihood function, bayesian statistics, sample source 46
27 Make You Holla' Tikka Masala: Creating User-Defined Informats Using the PROC FORMAT OTHER Option To Call User-Defined FCMP Functions That Troy Martin Hughes You can't just let any old thing inside your tikka masala-you need to carefully curate the ingredients of this savory, salty, sometimes spicy delicacy! Thus, when reviewing a data set that contains potential tikka masala ingredients, an initial data quality evaluation should differentiate approved from unapproved ingredients. Cumin, yes please; chicken, the more meat the merrier; coriander, of course; turmeric, naturally; yeast, are you out of your naan -loving mind?! Too often, SAS practitioners first inge st a data set in one DATA STEP, and rely on subsequent DATA STEP s to clean, standardize, and format those data. This text demonstrates how user -defined informats can be designed to ingest, validate, clean, and standardize data in a single DATA STEP. Moreover, it demonstrates how the FORMAT procedure can leverage the OTH ER option to create a user -defined informat that calls a user -defined FCMP function to perform complex data evaluation and transformation while simulating _ERROR_ variable functionality . Control what you put inside your tikka masala with this straightforward solution that epitomizes data-driven software design while leveraging the flexibility of the FORMAT and FCMP procedures! hash table, proc format, missing value, lookup, input statement, data cleaning, raw data, txt, data ingestion, proc fcmp source 10
28 Making a Readable PROC COMPARE Report in Excel Jane Eslinger When using PROC COMPARE to examine two data sets for differences, the default output is a verbose and segmented report optimized for the ODS LISTING destination. When sent to EXCEL, the report-with one variable holding all the information-becomes hard to comprehend. This paper demonstrates how to capture and manipulate key ODS OUTPUT data sets generated by PROC COMPARE. It then shows how to use those data sets with PROC REPORT to create a cleaner, more readable report in EXCEL perfect for review, documentation, or delivery proc compare, proc step, excel, macro variable, proc print, output delivery system, ods output, data cleaning, proc sql, ods excel, macro definition source 27
29 Maps, maps, and more maps using SAS PROC SGMAP! Melinda MacDougall Presentation proc step, clinical research, proc gmap source 40
30 Mind the Gaps: Automating Multiple Imputation in Clinical Trial Workflows Crisa Chen,
Jiangang Cai
Presentation sensitivity analysis, imputation, proc step, adam dataset, clinical trial, multiple imputation, missing value, cdisc source 30
31 More Muggles, More Macros: Adding Advanced Data-Driven Wizardry to Your SAS Programs Joshua M. Horstman,
Richann J. Watson
Presentation macro variable, call execute, proc step, macro call, macro facility, ods rtf, proc sgplot, output delivery system, variable list, change from baseline, macro definition, safety population, &variable, proc sql, excel, macro loop source 45
32 Multivariate Ratio Edits Using Tolerance Intervals Daniel Tuyisenge,
Derek Young,
Thomas Mathew
Presentation outlier, sample, confidence level, bootstrap, mahalanobis distance, type ii error, correlation source 26
33 PROC BGLIMM: The Smooth Transition to Bayesian Analysis Danny R. Modlin covariance, proc step, proc mixed, output delivery system, sample, covariance structure, cpu time, monte carlo, ods graphics, poisson distribution, regression analysis source 57
34 Prompt, Program, Submit: Generative AI for Faster SDTM, ADaM, and TLFs Matthew J. Becker,
Pankaj Attri
clinical programming, clinical trial, life sciences, raw data, reviewer guide, data science, mock shell, cdisc source 7
35 SAS Data-Driven Software Design: How to Develop More Modular, Maintainable, Fixable, Flexible, Configurable, Compatible, Reusable, Readable Software through Independent Control Troy Martin Hughes Data-driven design describes software design in which the control logic, program flow, business rules, data models, data mappings, and other dynamic and configurable elements are abstracted to control data that are interpreted by (rather than contained within) code. Thus, data-driven design leverages parameterization and external data structures (including configuration files, control tables, decision tables, data dictionaries, business rules repositories, and other control files ) to produce dynamic software functionality. That is, the definition of "software" is expanded to include not only code but also the control data driving that code, as described in the author's book : SAS Data -Driven Development: From Abstract Design to Dynamic Functionality, Second Edition . (Hughes, 2022) This white paper describes and demonstrates data -driven programming techniques that flexibly read comma-separated values (CSV) files in which column order may vary, columns can be missing, and extra columns can be present. The header row of the CSV file is used to assess which variables are present, after which a user-defined data dictionary is dynamically interrogated to evaluate the data types, lengths, and formats of all variables as they are being ingested from the CSV file. The clear advantages of thi s solution include the ability to ingest virtually any CSV file using a single, reusable method, as well as the ability to modify CSV column attributes solely through the data dictionary, without the need to modify the code. Hardcoding is eliminated, and flexibility and maintainability are achieved! data dictionary, %if-%then-%else source 8
36 SAS Macro Programming: The Basics and Beyond Kirk Paul Lafler The SAS Macro Language is a powerful feature for extending the capabilities of the SAS System. This paper 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, excel, macro facility, proc step, proc sql, autocall macro, macro definition, macro function, macro parameter, %macro parameters, dictionary tables, ods excel, sas log, output delivery system, options statement, macro loop, &variable, proc freq source 13
37 SAS Trustworthy AI Examples Caleb Petterson The accelerating adoption of artificial intelligence (AI) brings significant risks related to model opacity, unfair outcomes, and fragility in production. To address these challenges, we propose a scenario-based framework for implementing Trustworthy AI principles. This paper demonstrates the construction of 15 end-to-end machine learning pipelines across education, finance, healthcare, and public sectors, each targeting a specific challenge within the core disciplines of explainability, fairness, and robustness. We illustrate how techniques such as surrogate models, SHAP, fairness constraints, adversarial training, and drift detection can be systematically evaluated and applied. Our findings indicate that the effectiveness of a Trustworthy AI technique is highly context-dependent, and we provide a practical blueprint for organizations seeking to operationalize responsible AI using SAS software type ii error, credit scoring source 4
38 So You Want To Be An Independent Consultant: 2025 Edition Joshua M. Horstman While many statisticians and programmers are content with a traditional employment setting, others yearn for the freedom and flexibility that come with being an independent consultant. While this can be a tremendous benefit, there are many details to consider. This paper will provide an overview of consulting as a statistician or programmer. We'll discuss the advantages and disadvantages of consulting, getting started, finding work, operating your business, and various legal, financial, and logistical issue s. The paper has been recently updated to reflect the new realities of independent consulting in 202 5 and beyond artificial intelligence, auto insurance source 12
39 The (ODS) Output of Your Desires: Creating Designer Reports and Data Sets Louise S. Hadden SAS procedures can convey an enormous amount of information - sometimes more information than is needed. Most SAS procedures generate ODS objects behind the scenes. SAS uses these objects with style templates that have custom buckets for certain types of output to produce the output that we see in all destinations (including the SAS listing). By tracing output objects and ODS templates using ODS TRACE (DOM) and by manipulating procedural output and ODS OUTPUT objects, we can pick and choose just the information that we want to see. We can then harness the power of SAS data management and reporting procedures to coalesce the information collected and present the information accurately and attractively proc contents, proc step, ods output, sas output, estimate, output, excel, data step, proc univariate, odds ratio, proc sql, proc surveyfreq, proc report source 12
40 The World is Not Enough: Base SAS Visualizations and Geolocations Louise S. Hadden Geographic processing in SAS has recently undergone some major changes: as of Version 9.4 Maintenance Release M5 many procedures formerly a part of SAS/GRAPH are now available in BASE SAS. At the same time, SAS Graphics have added some new procedures such as PROC SGMAP that build on the functionality of SAS/GRAPH's PROC GMAP and incorporate ODS graphics techniques including attribute maps and image annotation. This paper and poster will replicate a map of the world created by the author with SAS/GRAPH and PROC GMAP with the annotate facility using PROC SGMAP to map three different metrics on a map of the world. New SAS mapping and SG procedure techniques will be demonstrated, following Agent 007's adventures across the globe proc step, sas base, proc gmap source 12
41 Under the Hood: The Mechanics of SQL Query Optimization Techniques Kirk Paul Lafler The SAS software and SQL procedure provide powerful features and options for users to gain a better understanding of what's taking place during query processing. This presentation explores the fully supported SAS MSGLEVEL=I system option and PROC SQL _METHOD option to display valuable informational messages on the SAS Log about the SQL optimizer's execution plan as it relates to processing SQL queries; along with an assortment of query optimization techniques proc sql, proc step, sas log, options statement, where statement, index, select, cpu time, error message, sas library, data merging source 8
42 Understanding the online shopper's purchasing pattern through machine learning in SAS Dravin Poudyal,
Ruchi Karki
source 1
43 Undo SAS Fetters with Getters and Setters: Supplanting Macro Variables with More Flexible, Robust PROC FCMP User-Defined Functions That Perform Troy Martin Hughes Getters and setters are common in some object-oriented programming (OOP) languages such as C++ and Java, where "getter" functions retrieve values and "setter" functions initialize (or modify) variables. In Java, for example, getters and setters are constructed as conduits to private classes, and facilitate data encapsulation by restricting variable access. Conversely, the SAS language lacks classes, so SAS global macro variables are typically utilized to maintain and access data across multiple DATA steps and procedures. Unlike an OOP program that can categorize variables across multiple user -defined classes, however, SAS maintains only one global symbol table in which global macro variables can be maintained. Additionally, maintaining and accessing macro variables can be difficult when quotation marks, ampersands, percentage signs, and other special characters exist in the data. This text introduces user - defined getter functions and setter subroutines designed using the FCMP procedure , which enable data lookup and initialization operations to be performed within DATA steps. Among other benefits, user-defined getters and setters can facilitate the evaluation of complex Boolean logic expressions that leverage data stored across multiple data sets -all concisely performed in a single SAS statement! Getters and setters are thoroughly demonstrated in the author's text: PROC FCMP User-Defined Functions: An Introduction to the SAS Function Compiler. (Hughes, 2024) CALCULATING CALORIC CONTENT: FROM PSEUDOCODE TO POOR SOLUTIONS The full functionality and context of getters and setters lie far beyond the scope of this text. In a nutshell, however, getters retrieve data values from encapsulated variables, and setters initialize or modify variables. This functionality can be mimicked in SAS by storing key -value pairs within SAS data sets, by retrieving values by calling user-defined functions, and by modifying values by calling user-defined subroutines macro variable, proc fcmp, symbol table, global symbol table source 8
44 Use ODS Excel, ODS PDF, ODS HTML5, ODS LAYOUT LeRoy Bessler Presentation output delivery system, proc sgplot, proc step, excel, ods pdf, ods graphics, ods excel source 157
45 Validate the Code, not just the Data : A System for SAS program evaluation Jayanth Iyengar Regardless of the industry they work in, SAS programmers are focused on validating data, and devote a considerable amount of attention to the quality of data, whether its raw source data, submitted SAS data sets, or SAS output, including figures and listings. No less important is the validity of code and the SAS programs which extract, manipulate, and analyze data. Although code validity can be assessed through the SAS log, there other ways to produce metrics on code validity. This paper introduces a system for SAS program validation which produces useful information on lines of code, number of data steps, total run and CPU time and other metrics for project-related SAS programs cpu time, dataset, proc step, sas log, proc print, proc sql, excel, key performance indicator, proc import, flag variable, macro variable, txt, call symput, proc transpose, xls, input statement, proc contents, proc sort, if-then-else, create table, fullstimer, data step source 38
46 Wise Graphic Design & Color Use for Data Graphics Easily, Quickly, Correctly Understood LeRoy Bessler Presentation data analyst, sas output, sas programmer, excel source 94
47 Worried about that Second Date with ISO? Using PROC FCMP to Convert and Impute ISO 8601 Dates to Numeric Dates Richann J. Watson Within the life sciences, programmers often find themselves doing a lot of dating - matching, converting between character and numeric values, and imputing missing components. Clinical Data Interchange Standards Consortium (CDISC) Study Data Tabulation Model (SDTM) domains have implemented the use of the International Organization for Standardization (ISO) format, ISO 8601, for datetimes. These dates are stored as character strings with missing components denoted using a single hyphen. Although this format helps to standardize how dates and times are captured so that there is no confusion as to what the date represents, it leaves a longing for something more compatible for analysis purposes: determining durations and number of days from a reference point. The conversion of ISO dates to a numeric format requires a serious commitment, especially when partial ISO dates require imputations. Although SAS offers a variety of built-in formats and functions that can appease both sides on a date, i.e., converting complete ISO dates to numeric values or numeric dates to ISO dates, there is no SAS-provided function that will help with the required conversion and imputation of a partial date. Fortunately, with the use of the FCMP procedure, we can create our own custom functions to help achieve our desired goal. This paper illustrates the process of building a custom function that will take a date that is captured in the appropriate ISO format in SDTM (--DTC) and convert that date to a numeric format while also giving partial dates the extra attention to impute missing components. Additionally, this custom function sets the correct date imputation variable (--DTF), so you always know just how much of a blind date your derived value really is imputation, proc fcmp, proc step, return, sas function, adverse events, options statement, cdisc source 19
48 You've Got Options: Ten Five-Star System Option Hacks Louise S. Hadden options statement, proc step, proc options source 11

Back to Conf go 2024

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.