SAS Logic Coding Made Easy Revisit User-defined Function Songtao Jiang, Boston Scientific Corporation, Marlborough, MA
|
|
|
- Grant Warner
- 10 years ago
- Views:
Transcription
1 ABSTRACT PharmaSUG Paper CC04 SAS Logic Coding Made Easy Revisit User-defined Function Songtao Jiang, Boston Scientific Corporation, Marlborough, MA SAS programmers deal with programming logics on a daily basis. Using regular logical operators can solve a complex logic problem, but oftentimes it is not intuitive, error-prone, and hard to read and maintain. Implementation also heavily depends on how well the individual understands the logics and how good the individual programmer s logical thinking is. In this paper, by using SAS User-defined Function, we lay out a universal way of implementing SAS logics without the dependence of individual s ability and experience. The implementation is straight-forward, error-prove, and clear. Furthermore, these SAS user-defined functions for logical operators can be built into the standard library and utilized by all programmers within an organization. They are extremely useful to all levels of SAS programmers. To demonstrate the idea, the implementations of these functions are introduced. Two sets of the sample codes of a moderately complex logic are compared between regular logic implementation and User-defined Function. INTRODUCTION SAS programmers deal with programming logics on a daily basis. It is very important and sometimes critical that a programmer can effectively and correctly program the provided logics in clinical settings. In the traditional way, programmers use the if-then-else statement and the SAS logical operators and to implement these logics. For simple logics, it is effective and easy to use. However for more complex logics, things become more tricky and difficult to implement. And also the basic operators may generate unexpected results when they deal with variables with missing values. Let s review how the basic logical operators work. We have three basic logical operators: AND, OR, and NOT. The following table (Table 1) lists their operation characteristics: Variables Logical Operators* a b a AND b a OR b NOT a * In logical expression, SAS treats missing or 0 as false and all other value as true. Table 1: Basic logical operators and results From Table 1, we can see that 0 or missing value is treated as false in a logic expression, and 1 or other value is treated as true. In this paper, we only discuss 0, 1, and missing values. Any other values should be converted to one of these three values before putting into a logic expression. LOGICAL EXPRESSION AND ISSUES In clinical settings, oftentimes missing value should be treated as missing instead of false. For example, we need to create a Group variable from 2 binary variables Male and Diabetes. We need to identify male subjects with diabetes as one group, the rest subjects as another group. For group 1, it is easy to determine. If a subject is a male with diabetes, then Group = 1. However for group 2, it is a little bit tricky given the presence of missing values of 2 binary variables - Male and Diabetes. In the following, I give 2 wrong solutions and one correct solution, and result comparison table (Table 2). 1
2 Solution 1: DATA Demo1; IF Male AND Diabetes THEN Group=1; ELSE IF Missing(Male) OR Missing(Diabetes) THEN Group=.; ELSE Group=2; Solution 2: DATA Demo2; IF Male AND Diabetes THEN Group=1; ELSE IF (NOT Male) OR (NOT Diabetes) THEN Group=2; Solution 3 (correct solution): DATA Demo3; IF Male AND Diabetes THEN Group=1; ELSE IF (Male EQ 0) OR (Diabetes EQ 0) THEN Group=2; Variables Solution 1 Solution 2 Solution 3 Male Diabetes Group Group Group Table 2: Results Comparison between 3 Solutions For solution 1, a few cases are missed to be identified as group 2. This is because one of these two binary variables is missing. But in some cases even one variable is missing, we can still determine which group the subject should belong to. For the subject with Male=. and Diabetes=0, this subject is definitely not in Group 1 ( Male and Diabetes ) no matter what the missing value would be for variable Male. So this subject should belong to group 2. In another case for subject with Male=. and Diabetes=1, the Group should be missing because the results depend on value of the variable Male. For solution 2, all subjects are grouped into two groups. This is also not what we wanted. The issue is related to the NOT logical operator. As we mentioned, all logical operators treated missing value as false. Using NOT logical is not appropriate in this case even though the SAS code is very close to what the correct solution is. For solution 3, we are able to give the correct solution with the help of comparison operator EQ instead of using the logical operator NOT as in solution 2. From the example, we can see that a very simple logic task can get us into a tricky situation. If we are given more variables or more complex logics, things are getting a lot worse. Even a well experience programmer may feel that it is not easy to handle. To address this common issue among all levels of SAS programmers, a very simple implementation using SAS Userdefined Function is proposed. It is simple, flexible, error-prove, and very effective. 2
3 USER-DEFINED FUNCTION (UDF) FOR LOGIC EXPRESSION LOGICAL OPERATOR UDFS IMPLEMENTATION Use SAS Function Compiler procedure to create the User-defined functions for the logical operators. For the UDFs, we need to treat missing value as missing. And the results depend on the situations listing in the following table (Table 3): Parameters UDF a b a AND b a OR b Table 3: UDF definitions and Results The UDF implementations based on Table 3 are given below: PROC FCMP OUTLIB=sasuser.myUDF.logic; FUNCTION logicand(a,b); IF a=. AND b=. THEN logicand=.; IF a=. AND b=0 THEN logicand=0; IF a=. AND b=1 THEN logicand=.; IF a=0 AND b=. THEN logicand=0; IF a=0 AND b=0 THEN logicand=0; IF a=0 AND b=1 THEN logicand=0; IF a=1 AND b=. THEN logicand=.; IF a=1 AND b=0 THEN logicand=0; IF a=1 AND b=1 THEN logicand=1; RETURN(logicand); ENDSUB; FUNCTION logicor(a,b); IF a=. AND b=. THEN logicor=.; IF a=. AND b=0 THEN logicor=.; IF a=. AND b=1 THEN logicor=1; IF a=0 AND b=. THEN logicor=.; IF a=0 AND b=0 THEN logicor=0; IF a=0 AND b=1 THEN logicor=1; IF a=1 AND b=. THEN logicor=1; IF a=1 AND b=0 THEN logicor=1; IF a=1 AND b=1 THEN logicor=1; RETURN (logicor); ENDSUB; run; SOLUTION FOR THE EXAMPLE USING UDF Now we have defined the UDFs for the logical operators and are ready to use them to solve our earlier simple example. options cmplib=sasuser.myudf; /* Locate the User-define UDFs */ DATA DemoUDF; 3
4 SAS Logic Coding Made Easy Revisit User-defined Function, continued Group=2-logicand(Male,Diabetes); One may doubt that the UDF just lists all possible outcomes, and it is not very convincing for simplifying a logic expression. In the following section, I will give a more complex example. I will compare the implementations between using regular logical operators and using the UDFs. Then you will see more clearly the power of using UDFs to solve logic problems. COMPARISON BETWEEN TWO METHODS The following example is from a pacemaker device to determining the physiologic settings. The logic need to be implemented is as following: (Pacing Mode is AAIR) OR ((Pacing Mode is DDDR) AND ((AV Search = ON) OR (AV min > PR))) Pacing Mode AAIR, Pacing Mode DDDR, AV Search = ON, and AV min > PR are four binary variables with values (0, 1, or missing). SAS code used for the both methods: DATA DemoCMP; SET CRM; /* Use UDF */ UDF_Logic=logicor(AAIR, logicand(dddr, logicor(avsearch, AVGTPR))); /* Use regular logic expression */ if AAIR=1 or (DDDR=1 and (AVSearch=1 or AVGTPR=1)) then Reg_Logic=1; else if AAIR=0 and (DDDR=0 or (AVSearch=0 and AVGTPR=0)) then Reg_Logic=0; For the UDF method, it is very straight-forward. You can use the UDFs as regular functions, and just follow the given logic specifications to write the SAS code. This is can be easily implemented by all levels of programmers. For the regular logic expression method, depending on your experiences and logical thinking skill, different programmers may give different answers. The given SAS code above by far is the simplest solution that I can get with a paid price that I worked at background using the Set Operations. For Reg_logic = 1, it is straight-forward. The following are the derivations for Reg_logic = 0: and AND or OR and AND In summary of above derivations, the logic expression should be: AAIR=0 AND (DDDR=0 OR (AVSearch=0 AND AVGTPR=0)) 4
5 The following table (Display 1) lists partial dataset and output: Display 1: Partial dataset and output for the physiologic settings of the pacemaker device 5
6 CONCLUSION The SAS language has provided SAS programmers a way to define a User-defined Function. Using UDFs for SAS logic programming has demonstrated a lot of advantages over other methods. The solution is ideally simple, easy to implement, error-prove, and easy to maintain. REFERENCES Base SAS(R) 9.2 Procedures Guide. SAS 9.2 Documentation. Copyright 2013 SAS Institute Inc. Available at CONTACT INFORMATION Your comments and questions are valued and encouraged. Contact the author at: Name: Songtao Jiang Enterprise: Boston Scientific Corporation Address: 50 Boston Scientific Way City, State ZIP: Marlborough, MA Work Phone: Fax: [email protected] Web: SAS 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. Other brand and product names are trademarks of their respective companies. 6
Let SAS Modify Your Excel File Nelson Lee, Genentech, South San Francisco, CA
ABSTRACT PharmaSUG 2015 - Paper QT12 Let SAS Modify Your Excel File Nelson Lee, Genentech, South San Francisco, CA It is common to export SAS data to Excel by creating a new Excel file. However, there
New Tricks for an Old Tool: Using Custom Formats for Data Validation and Program Efficiency
New Tricks for an Old Tool: Using Custom Formats for Data Validation and Program Efficiency S. David Riba, JADE Tech, Inc., Clearwater, FL ABSTRACT PROC FORMAT is one of the old standards among SAS Procedures,
THE POWER OF PROC FORMAT
THE POWER OF PROC FORMAT Jonas V. Bilenas, Chase Manhattan Bank, New York, NY ABSTRACT The FORMAT procedure in SAS is a very powerful and productive tool. Yet many beginning programmers rarely make use
Table Lookups: From IF-THEN to Key-Indexing
Paper 158-26 Table Lookups: From IF-THEN to Key-Indexing Arthur L. Carpenter, California Occidental Consultants ABSTRACT One of the more commonly needed operations within SAS programming is to determine
It s not the Yellow Brick Road but the SAS PC FILES SERVER will take you Down the LIBNAME PATH= to Using the 64-Bit Excel Workbooks.
Pharmasug 2014 - paper CC-47 It s not the Yellow Brick Road but the SAS PC FILES SERVER will take you Down the LIBNAME PATH= to Using the 64-Bit Excel Workbooks. ABSTRACT William E Benjamin Jr, Owl Computer
Importing Excel File using Microsoft Access in SAS Ajay Gupta, PPD Inc, Morrisville, NC
ABSTRACT PharmaSUG 2012 - Paper CC07 Importing Excel File using Microsoft Access in SAS Ajay Gupta, PPD Inc, Morrisville, NC In Pharmaceuticals/CRO industries, Excel files are widely use for data storage.
Essential Project Management Reports in Clinical Development Nalin Tikoo, BioMarin Pharmaceutical Inc., Novato, CA
Essential Project Management Reports in Clinical Development Nalin Tikoo, BioMarin Pharmaceutical Inc., Novato, CA ABSTRACT Throughout the course of a clinical trial the Statistical Programming group is
The SET Statement and Beyond: Uses and Abuses of the SET Statement. S. David Riba, JADE Tech, Inc., Clearwater, FL
The SET Statement and Beyond: Uses and Abuses of the SET Statement S. David Riba, JADE Tech, Inc., Clearwater, FL ABSTRACT The SET statement is one of the most frequently used statements in the SAS System.
Counting the Ways to Count in SAS. Imelda C. Go, South Carolina Department of Education, Columbia, SC
Paper CC 14 Counting the Ways to Count in SAS Imelda C. Go, South Carolina Department of Education, Columbia, SC ABSTRACT This paper first takes the reader through a progression of ways to count in SAS.
PharmaSUG 2013 - Paper IB05
PharmaSUG 2013 - Paper IB05 The Value of an Advanced Degree in Statistics as a Clinical Statistical SAS Programmer Mark Matthews, inventiv Health Clinical, Indianapolis, IN Ying (Evelyn) Guo, PAREXEL International,
Make Better Decisions with Optimization
ABSTRACT Paper SAS1785-2015 Make Better Decisions with Optimization David R. Duling, SAS Institute Inc. Automated decision making systems are now found everywhere, from your bank to your government to
How To Write A Clinical Trial In Sas
PharmaSUG2013 Paper AD11 Let SAS Set Up and Track Your Project Tom Santopoli, Octagon, now part of Accenture Wayne Zhong, Octagon, now part of Accenture ABSTRACT When managing the programming activities
Need for Speed in Large Datasets The Trio of SAS INDICES, PROC SQL and WHERE CLAUSE is the Answer, continued
PharmaSUG 2014 - Paper CC16 Need for Speed in Large Datasets The Trio of SAS INDICES, PROC SQL and WHERE CLAUSE is the Answer ABSTRACT Kunal Agnihotri, PPD LLC, Morrisville, NC Programming on/with large
ABSTRACT THE ISSUE AT HAND THE RECIPE FOR BUILDING THE SYSTEM THE TEAM REQUIREMENTS. Paper DM09-2012
Paper DM09-2012 A Basic Recipe for Building a Campaign Management System from Scratch: How Base SAS, SQL Server and Access can Blend Together Tera Olson, Aimia Proprietary Loyalty U.S. Inc., Minneapolis,
Building and Customizing a CDISC Compliance and Data Quality Application Wayne Zhong, Accretion Softworks, Chester Springs, PA
WUSS2015 Paper 84 Building and Customizing a CDISC Compliance and Data Quality Application Wayne Zhong, Accretion Softworks, Chester Springs, PA ABSTRACT Creating your own SAS application to perform CDISC
SAS Programming Tips, Tricks, and Techniques
SAS Programming Tips, Tricks, and Techniques A presentation by Kirk Paul Lafler Copyright 2001-2012 by Kirk Paul Lafler, Software Intelligence Corporation All rights reserved. SAS is the registered trademark
One problem > Multiple solutions; various ways of removing duplicates from dataset using SAS Jaya Dhillon, Louisiana State University
One problem > Multiple solutions; various ways of removing duplicates from dataset using SAS Jaya Dhillon, Louisiana State University ABSTRACT In real world, analysts seldom come across data which is in
Paper PO03. A Case of Online Data Processing and Statistical Analysis via SAS/IntrNet. Sijian Zhang University of Alabama at Birmingham
Paper PO03 A Case of Online Data Processing and Statistical Analysis via SAS/IntrNet Sijian Zhang University of Alabama at Birmingham BACKGROUND It is common to see that statisticians at the statistical
Creating Dynamic Reports Using Data Exchange to Excel
Creating Dynamic Reports Using Data Exchange to Excel Liping Huang Visiting Nurse Service of New York ABSTRACT The ability to generate flexible reports in Excel is in great demand. This paper illustrates
WHITE PAPER. Harnessing the Power of Advanced Analytics How an appliance approach simplifies the use of advanced analytics
WHITE PAPER Harnessing the Power of Advanced How an appliance approach simplifies the use of advanced analytics Introduction The Netezza TwinFin i-class advanced analytics appliance pushes the limits of
Introduction to Criteria-based Deduplication of Records, continued SESUG 2012
SESUG 2012 Paper CT-11 An Introduction to Criteria-based Deduplication of Records Elizabeth Heath RTI International, RTP, NC Priya Suresh RTI International, RTP, NC ABSTRACT When survey respondents are
VOXI Earth Modelling Data Security and Architecture
WHITE PAPER VOXI Earth Modelling Data Security and Architecture By: Roger Amorim Director, Research and Technical Strategy As a Geosoft VOXI customer, you have entrusted Geosoft to help protect your data.
PharmaSUG 2014 Paper CC23. Need to Review or Deliver Outputs on a Rolling Basis? Just Apply the Filter! Tom Santopoli, Accenture, Berwyn, PA
PharmaSUG 2014 Paper CC23 Need to Review or Deliver Outputs on a Rolling Basis? Just Apply the Filter! Tom Santopoli, Accenture, Berwyn, PA ABSTRACT Wouldn t it be nice if all of the outputs in a deliverable
Chapter 5. Selection 5-1
Chapter 5 Selection 5-1 Selection (Decision) The second control logic structure is selection: Selection Choosing between two or more alternative actions. Selection statements alter the sequential flow
Graphing Made Easy for Project Management
Paper 7300-2016 Graphing Made Easy for Project Management Zhouming (Victor) Sun, AZ/Medimmune Corp., Gaithersburg, MD ABSTRACT Project management is a hot topic across many industries, and there are multiple
SDTM, ADaM and define.xml with OpenCDISC Matt Becker, PharmaNet/i3, Cary, NC
PharmaSUG 2012 - Paper HW07 SDTM, ADaM and define.xml with OpenCDISC Matt Becker, PharmaNet/i3, Cary, NC ABSTRACT Standards are an ongoing focus of the health care and life science industry. Common terms
Foundations & Fundamentals. A PROC SQL Primer. Matt Taylor, Carolina Analytical Consulting, LLC, Charlotte, NC
A PROC SQL Primer Matt Taylor, Carolina Analytical Consulting, LLC, Charlotte, NC ABSTRACT Most SAS programmers utilize the power of the DATA step to manipulate their datasets. However, unless they pull
SAS/Data Integration Studio Creating and Using A Generated Transformation Jeff Dyson, Financial Risk Group, Cary, NC
Paper BB-05 SAS/Data Integration Studio Creating and Using A Generated Transformation Jeff Dyson, Financial Risk Group, Cary, NC ABSTRACT SAS/Data Integration Studio (DI Studio) transformations are packaged
WESTMORELAND COUNTY PUBLIC SCHOOLS 2011 2012 Integrated Instructional Pacing Guide and Checklist Computer Math
Textbook Correlation WESTMORELAND COUNTY PUBLIC SCHOOLS 2011 2012 Integrated Instructional Pacing Guide and Checklist Computer Math Following Directions Unit FIRST QUARTER AND SECOND QUARTER Logic Unit
Recommending News Articles using Cosine Similarity Function Rajendra LVN 1, Qing Wang 2 and John Dilip Raj 1
Paper 1886-2014 Recommending News s using Cosine Similarity Function Rajendra LVN 1, Qing Wang 2 and John Dilip Raj 1 1 GE Capital Retail Finance, 2 Warwick Business School ABSTRACT Predicting news articles
Automation of Large SAS Processes with Email and Text Message Notification Seva Kumar, JPMorgan Chase, Seattle, WA
Automation of Large SAS Processes with Email and Text Message Notification Seva Kumar, JPMorgan Chase, Seattle, WA ABSTRACT SAS includes powerful features in the Linux SAS server environment. While creating
Clinical Trial Data Integration: The Strategy, Benefits, and Logistics of Integrating Across a Compound
PharmaSUG 2014 - Paper AD21 Clinical Trial Data Integration: The Strategy, Benefits, and Logistics of Integrating Across a Compound ABSTRACT Natalie Reynolds, Eli Lilly and Company, Indianapolis, IN Keith
Sanofi-Aventis Experience Submitting SDTM & Janus Compliant Datasets* SDTM Validation Tools - Needs and Requirements
In-Depth Review of Tools to Check Compliance of CDISC - Ready Clinical s Bhavin Busa March 2 nd, 2011 Managing Clinical in the Age of CDISC BASUG Quarterly Meeting Presentation Outline Brief introduction
An Introduction to SAS/SHARE, By Example
Paper 020-29 An Introduction to SAS/SHARE, By Example Larry Altmayer, U.S. Census Bureau, Washington, DC ABSTRACT SAS/SHARE software is a useful tool for allowing several users to simultaneously access
Technical Paper. Migrating a SAS Deployment to Microsoft Windows x64
Technical Paper Migrating a SAS Deployment to Microsoft Windows x64 Table of Contents Abstract... 1 Introduction... 1 Why Upgrade to 64-Bit SAS?... 1 Standard Upgrade and Migration Tasks... 2 Special
An email macro: Exploring metadata EG and user credentials in Linux to automate email notifications Jason Baucom, Ateb Inc.
SESUG 2012 Paper CT-02 An email macro: Exploring metadata EG and user credentials in Linux to automate email notifications Jason Baucom, Ateb Inc., Raleigh, NC ABSTRACT Enterprise Guide (EG) provides useful
From The Little SAS Book, Fifth Edition. Full book available for purchase here.
From The Little SAS Book, Fifth Edition. Full book available for purchase here. Acknowledgments ix Introducing SAS Software About This Book xi What s New xiv x Chapter 1 Getting Started Using SAS Software
REx: An Automated System for Extracting Clinical Trial Data from Oracle to SAS
REx: An Automated System for Extracting Clinical Trial Data from Oracle to SAS Edward McCaney, Centocor Inc., Malvern, PA Gail Stoner, Centocor Inc., Malvern, PA Anthony Malinowski, Centocor Inc., Malvern,
SAS 9.4 PC Files Server
SAS 9.4 PC Files Server Installation and Configuration Guide SAS Documentation The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2014. SAS 9.4 PC Files Server: Installation
Converting Electronic Medical Records Data into Practical Analysis Dataset
Converting Electronic Medical Records Data into Practical Analysis Dataset Irena S. Cenzer, University of California San Francisco, San Francisco, CA Mladen Stijacic, San Diego, CA See J. Lee, University
We begin by defining a few user-supplied parameters, to make the code transferable between various projects.
PharmaSUG 2013 Paper CC31 A Quick Patient Profile: Combining External Data with EDC-generated Subject CRF Titania Dumas-Roberson, Grifols Therapeutics, Inc., Durham, NC Yang Han, Grifols Therapeutics,
PharmaSUG 2014 - Paper PO01
ABSTRACT PharmaSUG 2014 - Paper PO01 A User Friendly Tool to Facilitate the Data Integration Process Yang Wang, Seattle Genetics, Inc., Bothell, WA Boxun Zhang, Seattle Genetics, Inc., Bothell, WA For
Remove Orphan Claims and Third party Claims for Insurance Data Qiling Shi, NCI Information Systems, Inc., Nashville, Tennessee
Paper S-101 Remove Orphan Claims and Third party Claims for Insurance Data Qiling Shi, NCI Information Systems, Inc., Nashville, Tennessee ABSTRACT The purpose of this study is to remove orphan claims
Paper DV-06-2015. KEYWORDS: SAS, R, Statistics, Data visualization, Monte Carlo simulation, Pseudo- random numbers
Paper DV-06-2015 Intuitive Demonstration of Statistics through Data Visualization of Pseudo- Randomly Generated Numbers in R and SAS Jack Sawilowsky, Ph.D., Union Pacific Railroad, Omaha, NE ABSTRACT Statistics
ABSTRACT INTRODUCTION THE MAPPING FILE GENERAL INFORMATION
An Excel Framework to Convert Clinical Data to CDISC SDTM Leveraging SAS Technology Ale Gicqueau, Clinovo, Sunnyvale, CA Marc Desgrousilliers, Clinovo, Sunnyvale, CA ABSTRACT CDISC SDTM data is the standard
Transferring vs. Transporting Between SAS Operating Environments Mimi Lou, Medical College of Georgia, Augusta, GA
CC13 Transferring vs. Transporting Between SAS Operating Environments Mimi Lou, Medical College of Georgia, Augusta, GA ABSTRACT Prior to SAS version 8, permanent SAS data sets cannot be moved directly
Automated Program Behavior Analysis
Automated Program Behavior Analysis Stacy Prowell [email protected] March 2005 SQRL / SEI Motivation: Semantics Development: Most engineering designs are subjected to extensive analysis; software is
Statistics and Analysis. Quality Control: How to Analyze and Verify Financial Data
Abstract Quality Control: How to Analyze and Verify Financial Data Michelle Duan, Wharton Research Data Services, Philadelphia, PA As SAS programmers dealing with massive financial data from a variety
Finding National Best Bid and Best Offer
ABSTRACT Finding National Best Bid and Best Offer Mark Keintz, Wharton Research Data Services U.S. stock exchanges (currently there are 12) are tracked in real time via the Consolidated Trade System (CTS)
Managing Tables in Microsoft SQL Server using SAS
Managing Tables in Microsoft SQL Server using SAS Jason Chen, Kaiser Permanente, San Diego, CA Jon Javines, Kaiser Permanente, San Diego, CA Alan L Schepps, M.S., Kaiser Permanente, San Diego, CA Yuexin
PharmaSUG 2014 - Paper PO24. Create Excel TFLs Using the SAS Add-in Jeffrey Tsao, Amgen, Thousand Oaks, CA Tony Chang, Amgen, Thousand Oaks, CA
ABSTRACT PharmaSUG 2014 - Paper PO24 Create Excel TFLs Using the SAS Add-in Jeffrey Tsao, Amgen, Thousand Oaks, CA Tony Chang, Amgen, Thousand Oaks, CA Creating pivot tables, figures, and listings (pivot
Switching from PC SAS to SAS Enterprise Guide Zhengxin (Cindy) Yang, inventiv Health Clinical, Princeton, NJ
PharmaSUG 2014 PO10 Switching from PC SAS to SAS Enterprise Guide Zhengxin (Cindy) Yang, inventiv Health Clinical, Princeton, NJ ABSTRACT As more and more organizations adapt to the SAS Enterprise Guide,
Technical Paper. Defining an ODBC Library in SAS 9.2 Management Console Using Microsoft Windows NT Authentication
Technical Paper Defining an ODBC Library in SAS 9.2 Management Console Using Microsoft Windows NT Authentication Release Information Content Version: 1.0 October 2015. Trademarks and Patents SAS Institute
Problems and Measures Regarding Waste 1 Management and 3R Era of public health improvement Situation subsequent to the Meiji Restoration
PROC SQL for SQL Die-hards Jessica Bennett, Advance America, Spartanburg, SC Barbara Ross, Flexshopper LLC, Boca Raton, FL
PharmaSUG 2015 - Paper QT06 PROC SQL for SQL Die-hards Jessica Bennett, Advance America, Spartanburg, SC Barbara Ross, Flexshopper LLC, Boca Raton, FL ABSTRACT Inspired by Christianna William s paper on
AN INTRODUCTION TO THE SQL PROCEDURE Chris Yindra, C. Y. Associates
AN INTRODUCTION TO THE SQL PROCEDURE Chris Yindra, C Y Associates Abstract This tutorial will introduce the SQL (Structured Query Language) procedure through a series of simple examples We will initially
Identifying Invalid Social Security Numbers
ABSTRACT Identifying Invalid Social Security Numbers Paulette Staum, Paul Waldron Consulting, West Nyack, NY Sally Dai, MDRC, New York, NY Do you need to check whether Social Security numbers (SSNs) are
PharmaSUG 2013 - Paper AD08
PharmaSUG 2013 - Paper AD08 Just Press the Button Generation of SAS Code to Create Analysis Datasets directly from an SAP Can it be Done? Endri Endri, Berlin, Germany Rowland Hale, inventiv Health Clinical,
Using Pharmacovigilance Reporting System to Generate Ad-hoc Reports
Using Pharmacovigilance Reporting System to Generate Ad-hoc Reports Jeff Cai, Amylin Pharmaceuticals, Inc., San Diego, CA Jay Zhou, Amylin Pharmaceuticals, Inc., San Diego, CA ABSTRACT To supplement Oracle
SAS Rule-Based Codebook Generation for Exploratory Data Analysis Ross Bettinger, Senior Analytical Consultant, Seattle, WA
SAS Rule-Based Codebook Generation for Exploratory Data Analysis Ross Bettinger, Senior Analytical Consultant, Seattle, WA ABSTRACT A codebook is a summary of a collection of data that reports significant
Eliminate Memory Errors and Improve Program Stability
Eliminate Memory Errors and Improve Program Stability with Intel Parallel Studio XE Can running one simple tool make a difference? Yes, in many cases. You can find errors that cause complex, intermittent
Using Proc SQL and ODBC to Manage Data outside of SAS Jeff Magouirk, National Jewish Medical and Research Center, Denver, Colorado
Using Proc SQL and ODBC to Manage Data outside of SAS Jeff Magouirk, National Jewish Medical and Research Center, Denver, Colorado ABSTRACT The ability to use Proc SQL and ODBC to manage data outside of
Data Analysis with MATLAB. 2013 The MathWorks, Inc. 1
Data Analysis with MATLAB 2013 The MathWorks, Inc. 1 Agenda Introduction Data analysis with MATLAB and Excel Break Developing applications with MATLAB Solving larger problems Summary 2 Modeling the Solar
SQL SUBQUERIES: Usage in Clinical Programming. Pavan Vemuri, PPD, Morrisville, NC
PharmaSUG 2013 Poster # P015 SQL SUBQUERIES: Usage in Clinical Programming Pavan Vemuri, PPD, Morrisville, NC ABSTRACT A feature of PROC SQL which provides flexibility to SAS users is that of a SUBQUERY.
10 Steps To Getting Started With. Marketing Automation
So the buzz about marketing automation and what the future holds for marketing in general finally got to you. Now you are ready to start using marketing automation and are not really sure where to start.
Automating SAS Macros: Run SAS Code when the Data is Available and a Target Date Reached.
Automating SAS Macros: Run SAS Code when the Data is Available and a Target Date Reached. Nitin Gupta, Tailwind Associates, Schenectady, NY ABSTRACT This paper describes a method to run discreet macro(s)
Section 1.4 Place Value Systems of Numeration in Other Bases
Section.4 Place Value Systems of Numeration in Other Bases Other Bases The Hindu-Arabic system that is used in most of the world today is a positional value system with a base of ten. The simplest reason
Optimizing System Performance by Monitoring UNIX Server with SAS
Optimizing System Performance by Monitoring UNIX Server with SAS Sam Mao, Quintiles, Inc., Kansas City, MO Jay Zhou, Quintiles, Inc., Kansas City, MO ABSTRACT To optimize system performance and maximize
Debugging Complex Macros
Debugging Complex Macros Peter Stagg, Decision Informatics It s possible to write code generated by macros to an external file. The file can t be access until the SAS session has ended. Use the options
UNIX Operating Environment
97 CHAPTER 14 UNIX Operating Environment Specifying File Attributes for UNIX 97 Determining the SAS Release Used to Create a Member 97 Creating a Transport File on Tape 98 Copying the Transport File from
Emailing Automated Notification of Errors in a Batch SAS Program Julie Kilburn, City of Hope, Duarte, CA Rebecca Ottesen, City of Hope, Duarte, CA
Emailing Automated Notification of Errors in a Batch SAS Program Julie Kilburn, City of Hope, Duarte, CA Rebecca Ottesen, City of Hope, Duarte, CA ABSTRACT With multiple programmers contributing to a batch
Copyright 2013 wolfssl Inc. All rights reserved. 2
- - Copyright 2013 wolfssl Inc. All rights reserved. 2 Copyright 2013 wolfssl Inc. All rights reserved. 2 Copyright 2013 wolfssl Inc. All rights reserved. 3 Copyright 2013 wolfssl Inc. All rights reserved.
Number of bits needed to address hosts 8
Advanced Subnetting Example 1: Your ISP has assigned you a Class C network address of 198.47.212.0. You have 3 networks in your company with the largest containing 134 hosts. You need to figure out if
Advanced Tutorials. Numeric Data In SAS : Guidelines for Storage and Display Paul Gorrell, Social & Scientific Systems, Inc., Silver Spring, MD
Numeric Data In SAS : Guidelines for Storage and Display Paul Gorrell, Social & Scientific Systems, Inc., Silver Spring, MD ABSTRACT Understanding how SAS stores and displays numeric data is essential
Programme Specification (Postgraduate)
Programme Specification (Postgraduate) 1. Programme Title(s): MSc/PGDip*/PGCert* Data Analysis for Business Intelligence *Exit awards only 2. Awarding body or institution: University of Leicester 3. a)
THE BASICS OF PING POST YOUR INTRODUCTORY GUIDE TO PING POST. boberdoo.com. Lead Distribution Software. boberdoo.com
THE BASICS OF PING POST YOUR INTRODUCTORY GUIDE TO PING POST INTRODUCTION If you re not already immersed in ping post lead verticals or are just recently entering ping post territory, you may be a bit
Help Guide - CSR Portal https://csrconnect.calcsea.org
Help Guide - CSR Portal https://csrconnect.calcsea.org Welcome to the CSR Portal The website where you can view membership information, download reports, and request address, phone, and email changes.
Managing Data Issues Identified During Programming
Paper CS04 Managing Data Issues Identified During Programming Shafi Chowdhury, Shafi Consultancy Limited, London, U.K. Aminul Islam, Shafi Consultancy Bangladesh, Sylhet, Bangladesh ABSTRACT Managing data
Tales from the Help Desk 3: More Solutions for Simple SAS Mistakes Bruce Gilsen, Federal Reserve Board
Tales from the Help Desk 3: More Solutions for Simple SAS Mistakes Bruce Gilsen, Federal Reserve Board INTRODUCTION In 20 years as a SAS consultant at the Federal Reserve Board, I have seen SAS users make
SUGI 29 Posters. Mazen Abdellatif, M.S., Hines VA CSPCC, Hines IL, 60141, USA
A SAS Macro for Generating Randomization Lists in Clinical Trials Using Permuted Blocks Randomization Mazen Abdellatif, M.S., Hines VA CSPCC, Hines IL, 60141, USA ABSTRACT We developed a SAS [1] macro
Dup, Dedup, DUPOUT - New in PROC SORT Heidi Markovitz, Federal Reserve Board of Governors, Washington, DC
CC14 Dup, Dedup, DUPOUT - New in PROC SORT Heidi Markovitz, Federal Reserve Board of Governors, Washington, DC ABSTRACT This paper presents the new DUPOUT option of PROC SORT and discusses the art of identifying
Problem Solving Basics and Computer Programming
Problem Solving Basics and Computer Programming A programming language independent companion to Roberge/Bauer/Smith, "Engaged Learning for Programming in C++: A Laboratory Course", Jones and Bartlett Publishers,
C Programming. for Embedded Microcontrollers. Warwick A. Smith. Postbus 11. Elektor International Media BV. 6114ZG Susteren The Netherlands
C Programming for Embedded Microcontrollers Warwick A. Smith Elektor International Media BV Postbus 11 6114ZG Susteren The Netherlands 3 the Table of Contents Introduction 11 Target Audience 11 What is
Lost in Space? Methodology for a Guided Drill-Through Analysis Out of the Wormhole
Paper BB-01 Lost in Space? Methodology for a Guided Drill-Through Analysis Out of the Wormhole ABSTRACT Stephen Overton, Overton Technologies, LLC, Raleigh, NC Business information can be consumed many
Macros from Beginning to Mend A Simple and Practical Approach to the SAS Macro Facility
Macros from Beginning to Mend A Simple and Practical Approach to the SAS Macro Facility Michael G. Sadof, MGS Associates, Inc., Bethesda, MD. ABSTRACT The macro facility is an important feature of the
Figure 1. Example of an Excellent File Directory Structure for Storing SAS Code Which is Easy to Backup.
Paper RF-05-2014 File Management and Backup Considerations When Using SAS Enterprise Guide (EG) Software Roger Muller, Data To Events, Inc., Carmel, IN ABSTRACT SAS Enterprise Guide provides a state-of-the-art
Best Practice in SAS programs validation. A Case Study
Best Practice in SAS programs validation. A Case Study CROS NT srl Contract Research Organisation Clinical Data Management Statistics Dr. Paolo Morelli, CEO Dr. Luca Girardello, SAS programmer AGENDA Introduction
Data-driven Validation Rules: Custom Data Validation Without Custom Programming Don Hopkins, Ursa Logic Corporation, Durham, NC
Data-driven Validation Rules: Custom Data Validation Without Custom Programming Don Hopkins, Ursa Logic Corporation, Durham, NC ABSTRACT One of the most expensive and time-consuming aspects of data management
