PharmaSUG 2015 Papers - Index
195 papers. Source: PharmaSUG (Pharmaceutical Software Users Group) conference proceedings.
| # | Title× | Authors× | Abstract× | Keywords× | Extras | Pages |
|---|---|---|---|---|---|---|
| 1 | %PIC_NPMLE: A SAS Macro For Nonparametric Estimation In Partly Interval-Censored Survival Data | Liang Zhu, Yimei Li, Qinlei Huang |
Partly interval-censored (PIC) data arise frequently in follow-up studies. An example of such data is provided by the St. Jude Lifetime Cohort study (SJLIFE), which follows childhood cancer survivors for late effects such as growth hormone deficiency (GHD). For some patients, the exact time of the first occurrence of GHD is reported, but for others, the exact time is unknown and is recorded as occurring between two clinic visits. PIC data is an important topic in medical research; however, no statistical software is available for analyzing it. In this paper, we provide two SAS macros to calculate the nonparametric maximum-likelihood estimator (NPMLE) of the survival function in PIC data. We estimate the NPMLE by using an iterative convex minorant (ICM) algorithm and an EM iterative convex minorant (EM-ICM) algorithm based on two different likelihood functions | survival function, likelihood function, censoring, macro definition | source | 12 |
| 2 | A Collection of Items from a Programmers' Notebook | David W. Franklin, Cecilia Mauldin |
Every programmer should have a notebook with notes and pieces of code that are of interest to them. Some will be categorized as personal, notes only of interest to them, but most are of interest to a broader range of SAS programmers. This paper brings together ten of the most useful tips from the notebooks of two SAS programmers with nearly fifty years of combined experience that will be useful to beginner and experienced SAS programmer alike. Topics include advice for using the SAS Editor; combing SAS data sets; reviewing SAS Logs; creating EXCEL files from SAS data sets; creating SAS data sets from EXCEL files; creating editor macros in Enterprise guide; splitting the info from &sysinfo; keep only the character, numeric or printable characters in a strip of text; creating empty data sets; to that little bit of code that calculates the first, middle or end date of month. Bring along your notebook and take away an idea or two |
sas log, excel, dataset, proc step, proc import, sas enterprise guide, proc export | source | 19 |
| 3 | A General SAS Macro to Implement Optimal N:1 Propensity Score Matching Within a Maximum Radius | Kathy Hardis Fraeman | A propensity sc ore is the pro bability that an individual wil l be ass igned to a condition or gro up, gi ven a se t of covariates when the assignment is made. For example, the type of drug treatment given to a patient in a real-world setting may be non -randomly based on the patient's age, gender, ge ographic location, ove rall hea lth, and/or socioeconomic status when the drug is prescribed. Propensity scores are used in o bservational studies to reduce selection bias by matching the different groups based on these propensity score probabilities, rather than matching patients on the values of the individual covariates. Although the underlying statistical theory behind propensity score matching is complex, implementing propensity score matching by the radius meth od with SAS is relatively straightforward | propensity score, propensity score matching, proc step, proc logistic, logistic distribution, macro definition, dataset | source | 12 |
| 4 | A Macro to Easily Generate a Calendar Report | Ting Sa | This paper introduces a macro that generates a calendar report in two different formats. The first format displays the entire month in one plot, which is called a month-by-month calendar report. The second format displays the entire month in one row and is called an all-in-one calendar report. To use the macro, you just need to prepare a simple data set that has three columns: one column identifies the ID, one column contains the date, and one column specifies the notes for the dates. On the generated calendar reports, you can include notes and add different styles to certain dates. Also, the macro provides the option for you to decide whether those months in your data set that do not contain data should be shown on the reports | sample, in= | source | 7 |
| 5 | A Macro to Produce a SAS Data Set Containing the List of File Names Found in the Requested Windows or UNIX Directory | Mike Goulding | Clinical programmers often need to perform a particular process for each file that exists in a specific directory, on Windows or UNIX. For example, consider a directory that contains SAS V5 transport files, which need to be converted back to standard data sets, perhaps as part of doing a final quality check prior to regulatory submission. To run through the conversion step for all these files dynamically, somehow the programmer must first create a data structure which contains the file names in the target directory. This paper presents the macro dir_contents, which captures all file names from the requested directory, and returns the file names as observations within a SAS data set. In this structure, the data set can be readily processed by a subsequent macro do-loop, to perform whatever procedure might be appropriate. The macro performs basic error checking, and supports filtering the requested directory by file extension | data step, macro variable, proc sql, proc step, macro loop | source | 7 |
| 6 | A Methodology of Laboratory Data Reporting of Potentially Clinical Significant Abnormality (PCSA) for Clinical Study Report | Xiangchen (Bob) Cui, Min Chen |
In February 2005, the Center for Drug Evaluation and Research (CDER) issued a Reviewer Guidance: Conducting a Clinical Safety Review of a New Product Application and Preparing a Report on the Review [1], which points out that reporting of Potentially Clinically Significant Abnormalities (PCSA) from laboratory, Vital signs, and ECG values for selected parameters is critical to clinical safety review. This paper describes a methodology, which shows step-by- step process to build a standard library for PCS criteria dataset for selected serum chemistry parameters and hematology parameters, and automatically generate CDISC-compliant standard variables in ADLB for PCS criteria, and create SAS table programming templates for PCSA tables and their listing. The standardization of PCS criteria dataset facilitates generating of CDISC-compliant standard variables in ADLB for PCS criteria and PCSA table template | baseline, csr, clinical trial, stage 1, vital signs, sample, adam dataset, cdisc | source | 21 |
| 7 | A New Era: Open access to clinical Trial Data - A case study | Aruna Kumari Panchumarthi, Jacques Lanoue |
Access to the underlying (patient level) data that are colle cted in clinical trials provides opportunities to conduct further research that can help advance medical science or im prove patient care. This helps ensure the data provided by research participants are used to maximum effect in the creation of knowledge a nd understanding. Researchers can use anonymised patient level data and supporting document s from clinical studies to conduct further research. This paper will present: Overview of Data Sharing PROC ess. Challenges in Data Sharing. Challenges around Anonymization. Define new business process |
clinical trial, clinical research | source | 6 |
| 8 | A Practical Approach to Create Adverse Event Summary by Toxicity Grade Table | Zhengxin (Cindy) Yang | Adverse event summary by toxicity grade table is a common requirement in clinical safety study. The table displays severity grade of organ toxicity per CTCAE (Common Terminology Criteria for Adverse Events) as a sub-categories in AE summary tables. Those tables can be difficult to create with added sub-categories of organ toxicity grades. The variation of grade presentation with study requirements also adds complexity to the table programming. This paper presents a practical approach for generating AE grade tables using modular macro calls. It uses modules to address various formatting issues with AE grade tables. A set of guidelines is presented to simplify the programming process | system organ class, adverse event summary, adverse events, worst grade, ctcae grade, macro call, ae grade, proc step, proc freq, proc sql | source | 8 |
| 9 | A Review of "Free" Massive Open Online Content (MOOC) for SAS Learners | Kirk Paul Lafler | Leading online providers are now offering SAS users with "free" access to content for learning how to use and program in SAS. This content is available to anyone in the form of massive open online content (or courses) (MOOC). Not only is all the content offered for "free", but it is designed with the distance learner in mind, empowering users to learn using a flexible and self- directed approach. As noted on Wikipedia.org, "A MOOC is an online course, content, or other resource aimed at unlimited participation and made available in an open access forum using the web." This presentation illustrates how anyone can access a wealth of learning technologies including comprehensive student notes, instructor lesson plans, hands-on exercises, PowerPoints, audio, webinars, and videos | sas base, sas studio, sample | source | 16 |
| 10 | A SAS Macro Tool to Automate Generation of Define.xml V2.0 from ADaM Specification for FDA Submission | Min Chen, Xiangchen (Bob) Cui |
Both define.xml and a reviewer guide (define.pdf) are integral parts of any electronic FDA submission, in addition to SDTM and ADaM datasets. The standardized, well-defined, and detailed define files minimize the time needed for FDA reviewers to familiarize the data, and speed up the overall review process. The programming specification documentation serves as a part of a reviewer guide, as well as the documentation for programming validation. It is very crucial to ensure the consistency of the attributes of variables among datasets, define files, and programming specification. It is highly desirable to automate this process to ensure technical accuracy and operational efficiency | where statement, controlled terminology, adam dataset, dataset, macro definition, bds, cdisc | source | 28 |
| 11 | A Simple Macro to Select Various Variables Lists | Ting Sa, Yanhong Liu |
Often we need to select a subset of variables from a dataset. SAS software has provided the "SAS variable list" from which we can select the variables without typing their names individually. However, the "SAS variable list" cannot be used in all SAS procedures, such as the SELECT statement in the SQL procedure. Also, there is no "SAS variable list" available to select variables that share a common suffix or middle part in their names. In this paper, we introduce a macro that not only incorporates the "SAS variable list" to select a subset of variables, but also can be used to select variables that share common patterns in their names. Additionally, the results from the macro can be applied to all SAS procedures |
variable list, variable, proc sql, name range list, macro parameter, macro put, dataset, proc step, macro variable, numbered range list, character variable, select, sample | source | 5 |
| 12 | A Toolkit to Create a Dynamic Excel Format Metadata to Assist SDTM Mapping Process | Huei-Ling Chen, Helen Wang |
SDTM (Study Data Tabulation Model) dataset structure is a recommended standard data format when sponsors (e.g. pharmaceutical companies) submit a new drug application to the FDA. Data management teams and clinical SAS programming teams frequently encounter data mapping tasks to convert raw datasets to SDTM structured datasets. Having a toolkit to quickly summarize the raw datasets into a metadata in EXCEL spreadsheet format can be helpful to enable the mapping tasks. This paper demonstrates a toolkit which automatically searches the entire designated SAS data library and creates a dynamic EXCEL format metadata to summarize the data. This metadata has two main features: 1) one overview spreadsheet to list out all datasets embedded with a hyperlink so it can direct to individual dataset spreadsheet; 2) for each dataset, there is an individual spreadsheet presenting the variables attributes. In addition, there is a link directs back to the |
proc step, excel, sdtm programming, proc contents, clinical trial, flag variable, sdtm domain, missing value, libname statement, cdisc | source | 11 |
| 13 | A Unique Way to Annotate Case Report Forms (CRFs) in PDF, Using Forms Data Format (FDF) Techniques | Boxun Zhang, Tyler Kelly |
One of the essential tasks for programmers, as part of the internal processes and/or a component of a regulatory submission, is to annotate CRFs. While there are various approaches to accomplish this, Adobe Acrobat is commonly used. To overcome labor intensiveness of incorporating PDF annotations manually, creating an FDF file provides the possibility of a repository to store and manage the annotations. As these annotations are mapped by page numbers, it's still challenging to automatically assign the annotations back to the CRFs as desired, and across similar studies. By determining the degree of similarity based on the text strings of CRFs, it would be possible to establish accurate mappings of annotations to CRFs. This paper describes a simple method of using SAS COMPGED function based on fuzzy matching and explores the dynamic possibilities of incorporating PDF annotations in CRFs | annotated crf, txt, cdisc | source | 6 |
| 14 | A Visual Reflection on SAS/GRAPH History: Plot, Gplot, Greplay, and Sgrender | Haibin Shu, John He |
The author s present the novel development of SAS/GRAPH techniques including PROC PLOT, PROC GPLOT, PROC GREPLAY, and PROC SGRENDER, and provide the real-life examples to explain how SAS/GRAPH as a visualization tool has indeed been evolved in all aspects over the years. We believe that this v isualization tool now has become more powerful and more user-friendly |
proc step, proc greplay, proc gplot, scatter plot | source | 6 |
| 15 | A Way to Manage Clinical Project Metadata in SAS Enterprise Guide | David L. Wang | This paper will show how we use an existing standard (SDTM, ADaM, or Company standard ADS) as a starting point to build and maintain a project metadata, which can be used across all studies under a same project. This paper will use a real submission project experience to demonstrate how this approach was used during ADS development and how it saved a lot of time in a submission project. It can guarantee the SAS variable contributes (e.g. label, length and type) to be consistent across studies. It also helps the project programming lead to manage all studies in the creation of ADS and its define documents as well as ADS pooling process. All changes in the metadata were managed with SAS Enterprise Guide without third party software. It has been a quite convenient tool to use by including the same SAS macro in each of ADS programs. Major SAS code will be included in the paper | sas enterprise guide, macro call, cdisc | source | 5 |
| 16 | A Web-Based Approach to Fighting Analysis Chaos | Gordon Fancher, Rajeev Karanam, Shawn Hopkins |
Review of analyses by cross-functional teams is essential to provide quality output for industry conferences, manuscripts, regulatory submissions, and internal decision-making. Documentation and tracking of reviews are important to ensure all comments are addressed. In addition to comments, documentation typically includes records of the items being produced, team members performing the work, tasks assigned and performed by each team member, the project timeline and progress relative to the timeline, and specifications and metadata pertaining to each item being produced. Datasets, tables, listings, figures, and SAS macros and other utilities are items that have the potential to be tracked. There is a need to track these analyses over time for multiple purposes | clinical programming, data validation rules, clinical trial, phase ii, sql server, proc sql | source | 7 |
| 17 | Accelerate define.xml generation using defineReady | Senthilkumar Karuppiah, Georgina Wood |
With FDA & other regulatory agencies mandating electronic submissions and standardized data, Pharmaceutical companies & sponsors are gearing up for their submissions in CDISC SDTM and ADaM based standards. An important component of such submissions is the generation of the CRT-Data Definition Document (define.xml). Generating define.xml - based on metadata document gives more challenges to SAS programmers in the space of automation. This paper will discuss the detailed mechanism/automated way of generating and validating the define.xml from a user interface (GUI) and back end with the SAS integrated modules and pre-loaded metadata file. Also this paper takes a quick look on, how the defineReady will automatically generate and validate the components of define.xml like dataset metadata, variable level metadata, codelist, valuelist, origin and comments | define-xml, clinical data, cdisc | source | 4 |
| 18 | Accelerating Production of Safety TFLs in Bioequivalence and Early Phase | Denis Martineau | This paper discusses the main steps that were made and how the SAS software is utilized to maximize the output volume of Safety Tables, Figures, and Listings (TFLs) in bioequivalence and early phase studies using healthy volunteers. It explains how different teams within the same company sat down together to standardize their own study conduct processes in ways that facilitate each other's workflow. It also shows how small modifications to SAS code placed at strategic places make the creation of TFLs almost effortless in such environment | macro definition, sas enterprise guide | source | 8 |
| 19 | ADaM Example for a Complex Efficacy Analysis Dataset | Milan Mangeshkar, Sandra Minjoe |
This paper walks through a complex analysis need and an ADaM solution. The analysis need involved summarizing both pain data and pain medications data across multiple time points. Our methodology was to first understand our analysis need, and then determine whether we could use ADaM structures to get us there, while always following the ADaM fundamental principles. The design work was a joint effort of the study lead statistician, CRO study statistician, and an ADaM consultant. Our solution made use of interim ADaM BDS datasets to collect and consolidate the data from each SDTM domain before combining into the ADaM dataset actually used for analysis. These interim datasets provided traceability between the SDTM datasets and the ADaM dataset used for analysis, and were also instrumental for data review and listing generation | adam dataset, efficacy summary, cdisc | source | 8 |
| 20 | Adding Subversion Operations to the SAS Enhanced Editor | Oscar F. Cheung, Kenneth W. Borowiak |
Apache Subversion (SVN) is an open -source version control system whose use is growing amongst clinical trial programming departments. SVN can be used for versioning many files types, such as Microsoft Word and EXCEL, XML, RTF and SAS data sets and logs. However, clinical trial programmers have a valuable tool in SVN at their dispo sal for tracking the development and maintenance of SAS programs. This paper demonstrates how to enable two of the most common SVN operations, namely SVN ADD and SVN COMMIT, in the SAS Enhanced Editor |
clinical trial, proc catalog | source | 5 |
| 21 | ADDL Model for Device Analysis | Priya Gopal | The purpose of this paper is to propose an analysis model to be used in device trials. The draft proposed model is currently being reviewed by the ADaM team and is not part of the ADaM model. The draft model has to accommodate the presence of more than one device per subject. These devices could be separately implanted, explanted, modified and controlled externally on the subject. The team analyzed various use-cases pertaining to analysis requirements of device data and presented a draft device model to the ADaM team for review. This paper discusses some of the variable metadata that could be used in the device analysis | adam dataset, data cleaning, cdisc | source | 6 |
| 22 | Advantages and Disadvantages of Two Commonly Used CRO Resourcing Models in the Pharmaceutical SAS Programming Environment | Ying (Evelyn) Guo, Mark Matthews |
In the current pharmaceutical and biotech industry, outsourcing data services to a CRO continues to exist. In today's industry, two commonly used models, "Deliverable Based Model" and "Full-Time Equivalent (FTE) Time and Material Model" (also called as role based model), are widely used. Previously, one presentation at PharmaSUG (See PharmaSUG 2012 -Satyavarapu "A Comparison of Two Commonly Used CRO Resourcing Models for SAS/ Statistical Programmers") identified the differences of these two resourcing models and specifically discussed those models from a CRO point of view. Our paper will emphasize the advantages and disadvantages from a sponsor point of view and discuss how these variances affect the project work and collaboration. By discussing the comparison of these two models, this paper will provide valuable consideration points for sponsors to choose the CRO resourcing model that is of best fit and share ways to bridge the gaps that exist in the models | adam dataset, sas programming, clinical research, mock shell, cdisc | source | 7 |
| 23 | An Enhanced Forest Plot Macro Using SAS | Janette Garner | A forest plot allows for a quick visualization of results across multiple subgroups. Additional information such as the actual values of the forest plot or the response rates in each treatment group is usually not included in a basic forest plot. Building upon forest plot code written by Sanjay Matange, a platform-independent macro was developed to allow the user to create a forest plot with the additional information mentioned above. Moreover, the plot can be enhanced with a bar plot of response rates in each treatment group and numerical labels of the values for the forest plot. It utilizes SG procedures available in SAS 9.3 (in particular, the HIGHLOWPLOT statement) and a standardized input dataset. The macro can accommodate the data based on the differences between two treatment groups or the odds/risk ratio. Readability has also been improved by adding reference bands to the graph | forest plot, bar chart, in=, proc step | source | 9 |
| 24 | Analysis Methods for a Sequential Parallel Comparison Design (SPCD) | Harry Haber, James Zuazo, Linda LaMoreaux |
There are many considerations to take into account when planning a clinical trial, and an important consideration is trial design. Adaptive designs are sometimes chosen, as they include features that will increase the efficiency of a trial. One such example is the Sequential Parallel Comparison Design (SPCD), an adaptive design that allows for re-randomization of specific placebo subjects ("non-responders") from an early stage to placebo or treatment in a subsequent stage of the trial. This increases the number of subjects who receive active treatment and improves the power of the trial. Trials using the SPCD design can be analyzed using a number of different methods, including Ordinary Least Squares (OLS), Seemingly Unrelated Regression (SUR) and Repeated Measures Linear Model (MMRM). These methods are described in three papers that feature the SPCD design. This paper will describe, display and compare the methods | stage 1, stage 2, sample, treatment effect, proc step, proc model, clinical trial, estimate, adaptive design, sas output, change from baseline, efficacy summary, sample size, randomization | source | 11 |
| 25 | Application Development Techniques Using PROC SQL | Kirk Paul Lafler | Structured Query Language (SQL) is a database language found in the base-SAS software. It permits access to data stored in data sets or tables using an assortment of statements, clauses, options, functions, and other language constructs. This hands-on workshop (HOW) demonstrates core concepts as well as SQL's many applications, and is intended for SAS users who desire an overview of this exciting procedure's capabilities. Attendees learn how to construct SQL queries, create complex queries including inner and outer joins, apply conditional logic with case expressions, create and use views, and construct simple and composite indexes | proc sql, proc step, dictionary tables, where statement, macro variable, select, inner join, sas log, create table, order by, sas library, macro facility, view, macro call, right join | source | 20 |
| 26 | Are You a Control Freak? Control Your Programs - Don't Let Them Control You! | Mary F. O. Rosenbloom, Arthur L. Carpenter |
You know that you want to control the process flow of your program. When your program is executed multiple times, with slight variations, you will need to control the changes from iteration to iteration, the timing of the execution, and the maintenance of output and LOGS. Unfortunately in order to achieve the control that you know that you need to have, you will need to make frequent, possibly time consuming, and potentially error prone manual corrections and edits to your program. Fortunately the control you seek is available and it does not require the use of time intensive manual techniques. List processing techniques are available that give you control and peace of mind that allow you to be a successful control freak. These techniques are not new, but there is often hesitancy on the part of some programmers to take full advantage of them. This paper reviews these techniques and demonstrates them through a series of examples | macro variable, macro loop, do loop, proc step, variable list, macro call, proc sql, macro put, proc report, excel, macro quoting function | source | 20 |
| 27 | Are You An Indispensable SAS Programmer? | R. Mouly Satyavarapu | Job security is a serious concern for so many SAS programmers in today's workforce, especially knowing that many positions are either being outsourced to low cost regions like China and India or being cut/ revamped. Does that mean working towards or becoming an indispensable SAS programmer is the solution to this concern? In fact to become indispensable, lot of the programmers try to - monopolize a particular skill; be willing to go the extra mile; have a good attitude; be a thought leader; stay current with technology and trends; be a team player; offer solutions; be committed; do the work that matter most, but not the work that's easy; continually improve oral and communication skills; and be consistently reliable and trustworthy. I wholeheartedly agree that each of us should become the best we can be and that our work should be developed and refined to the point that it's viewed as an art, and we are seen as the contributor or architect behind the product | sas programmer, job security | source | 5 |
| 28 | Automated Checking Of Multiple Files | Kathyayini Tappeta | Most often clinical trial data analysis has tight deadlines with very close data transfers. When last minute modifications are done by different team members, an automated check of the required content in several files ensures increased efficiency under tight timelines. This obviates the need for each file to be opened and checked. The basic concept for such checks involves opening multiple files at a given location, extracting information from these to a single file and performing required checks so that each individual file need not be opened. It can have several applications including checking multiple log files for errors/ warnings, checking multiple PROC COMPARE files for notes and in case of macros written for tables, listings and graphs the parameter values can be checked to see if entered correctly. This paper provides code for automating the checking of files with example applications |
proc compare, proc step, macro parameter, out=, macro definition | source | 7 |
| 29 | Automating biomarker research visualization process | Xiaohui Huang, Jigar Patel |
Biomarker assays have become more and more popular in drug discovery clinical trial designs. It is widely used in different therapeutic areas to support decision making regarding drug candidates and accelerate drug development, in addition to reducing costs. Graphic presentation is essential in every Biomarker study report. An analysis of Biomarker data are typically fast paced and facing a tight timeline. A very useful tool is to have a utility macro to facilitate the visualization process and promote standardization to fulfill regulatory requirements. This paper presents a macro toolkit for generating the most commonly used statistical graphics in biomarker data analysis. Instead of relying on the default template, the code is developed in SAS 9.2 and using Graph Template Language (GTL) to take control of the graphic appearance. One feature of this macro is that it can automate symbol assignments to different populations in a consistent way across different plots | box plot, scatter plot, spaghetti plot, proc step | source | 6 |
| 30 | Automating Clinical Trial Reports with ODS ExcelXP Tagset | John R. O'Leary | This paper offers a solution for generating multiple EXCEL workbooks by combining SAS Base tools and a Visual Basic for Applications (VBA) macro. Beginning and intermediate SAS programmers will benefit from learning an approach that was implemented to create basic EXCEL workbooks for each of forty research sites in a Veterans Affairs clinical research trial. While there are many techniques that can be used in SAS, the example offered in this paper utilizes PROC REPORT, ODS ExcelXP Tagset, the SAS Macro Facility and a VBA macro to convert EXCEL XML files to standard EXCEL workbooks. Although this example involves the reporting of non-adherent study participants in a large clinical research trial, the technique and associated SAS code can be adapted for SAS programmers in a variety of environments who need to automate reporting for multiple entities |
excel, proc step, xls, proc report, clinical research, proc sql | source | 8 |
| 31 | Automation of paper dossier production for Independent Review Charter | Ting Ma, Jeff Cai, Michelle Zhang, Lina Gau |
Independent review charter (IRC) is recommended by FDA to minimize bias in radiographic interpretation of radiological findings. For oncology clinical trials, paper dossiers documenting the clinical information of subjects need to be submitted to IRC for assessments on an on-going basis whenever the pre-defined milestones are reached. When information from the same subject is sent to IRC more than once, track changes may need to be displayed on the paper dossier to assist the data review. Tracking the historical submissions for every subject and generating the final delivery PDF files with highlighted changes can be quite time-consuming. This paper presents an automated process to produce the track-changed paper dossier in batch, using SAS 9.3, regardless of the different submission history for each subject. The automation should greatly improve the efficiency of this programming task for IRC | source | 7 | |
| 32 | Begin with the End in Mind - Using FDA Guidance Documents as Guideposts when Planning, Delivering and Archiving Clinical Trials | David C. Izard | Clinical professionals, including Statisticians and Programmers, work tirelessly contributing to protocol & SAP development, CRF & clinical database design, analysis dataset design & implementation and the generation of tables, figures and listings in support of clinical trials. If the compound under study successfully navigates clinical and regulatory hurdles, most of these items will make their way into an U.S. Food & Drug Administration (FDA) submission. Historically there have been many sources of information on how to organize and present these assets for FDA consideration, many of which seemingly contradicted each other, making the requirements for regulatory submission cloudy at best. The FDA has recently changed this landscape, releasing final versions of two guidance documents with a companion technical specification document as well as a data standards catalog | adam dataset, sdtm domain, data cleaning, controlled terminology, clinical trial, raw data, clinical data, crf, regulatory submission, service provider, data validation rules, cdisc controlled terminology, adverse events, data standard, cdisc | source | 12 |
| 33 | Challenges in Developing ADSL with Baseline Data | Hongyu Liu, Hang Pang |
For a CDISC compliant submission, the ADSL (Analysis Data Subject Level) domain is the minimum required analysis dataset. However, developing an ADSL dataset can be quite challenging. One of the challenges is how to acquire and organize the baseline data for ADSL creation. Should ADSL be developed using SDTM data as its source data so that all ADaM (Analysis Data Model) domains are programmed independently without recursion? Or should ADSL be developed partially depending on other ADaM domain's programming? This paper will discuss various models that a sponsor may consider during the ADSL dataset generation | adam dataset, baseline characteristics, raw data, cdisc | source | 6 |
| 34 | Clinical knowledge helps SAS programmers in the pharmaceutical industry get job done better | Yingqiu Yvette Liu | SAS programming in the pharmaceutical industry is not a pure programming job like that in the IT industry. It requires more understanding and knowledge on the business side, i.e. the complicated nature of clinical trial and clinical trial data. In this sense, Clinical Trial Data Analyst is a better title reflecting the nature of the job. For SAS programmers in the Pharmaceutical industry, it will give them a unique perspective of view if they have thorough understanding of clinical trials and sufficient knowledge of the disease related to a given drug in clinical trial(s). This unique view helps bring a quicker grasp and deeper understanding of the clinical data, and it also may empower SAS programmers catch and solve hidden issues that usually won't be seen in others' eyes. In this paper, the author will provide examples that clinical knowledge helps SAS programmers in the pharmaceutical industry get job done better | sample, clinical trial, pharmaceutical industry, sas programmer | source | 4 |
| 35 | Confidence Intervals Are a Programmer's Friend | Xinxin Guo, Zhaohui Su |
A confidence interval (CI) is a type of interval estimate of a population parameter and is one of the most common terms statistical programmers face in everyday practice. This paper will present a collection of SAS code to calculate the CI's of a proportion obtained by PROC FREQ (special handling for category with zero count is also considered) based on the assumption that proportion follows a Binomial distribution, and the CI of incidence rate obtained by a handy formula based on the assumption that the number of events occurring in a fixed interval of time follows a Poisson distribution. The paper will also look at PROC GENMOD and PROC PLM and compare the results from these two procedures against the code given |
proc step, confidence interval, proc genmod, proc freq, proc plm, binomial distribution, sample, confidence level, output, poisson distribution | source | 8 |
| 36 | Considerations in ADaM Occurrence Data: Handling Crossover Records for Non-Typical Analysis | Karl Miller, Richann J. Watson |
With the release of the new ADaM Occurrence Data Model for public comment in the first quarter of 2014, the new model is clearly established to encompass adverse events as well as concomitant medications, along with other data into this standard occurrence analysis structure. Commonly used analysis for this type of occurrence structure data can be found utilizing subject counts by category, based on certain criteria (e.g. treatment, cohort, or study period). In most cases, the majority of the analysis data will be in a one-to-one relationship with the source SDTM record. In this paper, the authors will discuss the creation of ADaM occurrence data for specific cases outside the common or typical analysis where analysis requires a record in SDTM data, which spans across multiple study treatments, periods or phases, to be replicated for inclusion in non-typical analysis with a record being analyzed under multiple study treatments, periods or phases | dataset, sample, concomitant medications, adverse events, flag variable, cdisc | source | 6 |
| 37 | Considerations in Conforming Data from Multiple Implantable Medical Devices to CDISC Standards Using SAS | Julia Yang | Both pharmaceutical and medical device trial analyses are at the subject level, capturing a drug's or device's impact on the patient. Medical device trials are unique in that their analyses are also at the device level. Efficacy and safety data are affected by how each device is implanted and by the interactions of multiple related devices. Therefore, device-level analysis dataset (ADDL) is additionally required for device trials; similar to the required use of subject- level analysis dataset (ADSL). It can be challenging and time-consuming to plan and create SDTM and ADaM data for the first time. However, once the ADaM data set is created, the SAS programs can be reused in reporting for multiple different device trials. This should result in substantial savings of both time and resources | adam dataset, clinical trial, sdtm domain, adverse events, cdisc | source | 9 |
| 38 | Considerations in Submitting Non-Standard Variables: Supplemental Qualifiers, Findings About, or a Custom Findings Domain | Jerry Salyers, Richard Lewis, Fred Wood |
As discussed by one of the authors in 2013 (Wood. F, Considerations in Data Modeling when Creating Supplemental Qualifiers Datasets in SDTM-Based Submissions, PharmaSUG Proceedings, May 2013), the SDTM Implementation Guide (SDTMIG) provides for a standard mechanism and structure for submitting non-standard variables. That paper discussed common issues seen when submitting SUPP-- datasets, from using an inappropriate IDVAR to the practice of submitting data "as collected" (i.e. "coded") though often largely uninterpretable. Examples highlighted some of the unexpected outcomes when the parent domain and data from the supplemental domain are merged together (as during the course of review) based on the identified "merge key" in the IDVAR variable. With the advent and growing knowledge and use of the Findings About (FA) domain, many sponsors are challenged in determining where non-standard data best fit | adverse events, sdtmig, cdisc | source | 6 |
| 39 | Copying Files Programmatically in SAS Drug Development (SDD) | Wayne F. Woo | SAS Drug Development (SDD) is a statistical computing environment and repository that provides a 21 CFR Part 11 compliant system for analysis and reporting of clinical trials data. Sometimes, the tradeoff to implement a rigorous controlled system involves sacrificing features that have become commonplace in the toolkit of programmers working in other systems. One such feature unavailable in SDD is the use of the X command, thus forbidding use of the operating system's file copying command via %SYSEXEC and the FILENAME PIPE device. This led the author to search for workarounds to programmatically copy non-SAS-dataset files within SDD. This paper explores coding techniques that can be used to programmatically copy files within SDD version 3.5 |
macro variable, sas base | source | 3 |
| 40 | Create bookmarked PDFs using ODS | Aruna Kumari Panchumarthi, Jacques Lanoue |
When clinical studies are performed in pharmaceutical industry, huge amounts of statistical appendices like listings, tables, analyses and graphs are created which fo rm a part of electronic submissions. Typically these outputs are produced using standard macros, there's very little need for actually getting our hands dirty with ODS. However occasionally there will be requests to produce outputs that do not fit in the s tandard 'CSR' output model. SAS ODS and the compatibility of PROC REPORT with ODS DOCUMENT can be a very creative method of processing a large number of reports and graphs |
proc step, proc report | source | 7 |
| 41 | Creating a Break in the Axis | Amos Shu | Breaking the vertical and/or horizontal axis can simplify the figure, improve aesthetics, and save space. Two SAS samples 48330 and 38765 have provided examples to break the vertical axis. However, using ENTRY and DRAWLINE statements can create a much better break | sample, bar chart | source | 3 |
| 42 | Creating Data-Driven SAS Code with CALL EXECUTE | Hui Wang | In SAS programming language, the basic function of CALL EXECUTE is to resolve its argument and then execute the resolved value. It is one of the call routines which can interact with the macro facility within a DATA STEP. Therefore, in data-driven programming practice, it is widely used on such occasions as running macros conditionally or passing DATA STEP values to macros in a DATA STEP. This paper will discuss how to take advantage of the features of CALL EXECUTE to apply data -driven programming strategies. Such examples include: 1) Create a data set frame based on metadata provided; 2) Evaluate assessment values based on external criteria ; 3) Merge comments from EXCEL file back to corresponding data records regardless of variable attributes |
call execute, data step, excel, macro quoting function, proc sql | source | 8 |
| 43 | Creating Multi-Sheet Microsoft Excel Workbooks with SAS: The Basics and Beyond Part 2 | Vincent DelGobbo | This presentation explains how to use Base SAS 9 software to create multi-sheet EXCEL workbooks. You learn step-by-step techniques for quickly and easily creating attractive multi-sheet EXCEL workbooks that contain your SAS output using the ExcelXP Output Delivery System (ODS) tagset. The techniques can be used regardless of the platform on which SAS software is installed. You can even use them on a mainframe! Creating and delivering your workbooks on-demand and in real time using SAS server technology is discussed. Although the title is similar to previous presentations by this author, this presentation contains new and revised material not previously presented |
excel, xls, sas output, sas base, ods xml, proc report, sas log, proc tabulate, sample, adverse events, format statement, dataset | source | 21 |
| 44 | Creating output datasets using SQL (Structured Query Language) only | Andrii Stakhniv | PROC SQL is one of the most powerful procedures in SAS. With this tool we can easily manipulate data and create a large number of outputs. I will illustrate how we can create final datasets based on three common types of safety outputs using SQL (Structured Query Language) only: Outputs with a fixed structure (like Disposition outputs); Outputs with descriptive statistics (like Demographics or Laboratory outputs); * Outputs with a flexible 2-level hierarchy structure (like Adverse Events outputs). The approaches and tricks presented here can be utilized in everyday work as they are easy to implement and understand. Additionally, this information can be a helpful resource for those who are new to statistical programming analysis |
proc sql, proc step, sample, proc means, data science, adverse events | source | 10 |
| 45 | Creating Sophisticated Graphics using Graph Template Language | Kaitlyn McConville, Kristen Much |
Graph Template Language (GTL) is an excellent tool for customizing the underlying attributes of graphics produced by the SGPLOT/SGPANEL procedures. However, many find learning this relatively new (in production since SAS 9.2) language a challenge. This paper will take an example based approach to creating complex single- and multi-cell statistical graphics. Focus will be placed on syntax and options available in GTL, overlaying graphs of different types, and creating graphs with more complex layouts. The examples provided using data from the Immune Tolerance Network (ITN) and Autoimmune Disease Clinical Trials (ADCT) will enable you to take your graphs to the next level using GTL |
box plot, scatter plot, proc sgpanel, proc sgplot, statistical programmer | source | 11 |
| 46 | Creating the Perfect Table Using ODS to PDF in SAS 9.4 | Elizabeth Dennis, Maddy Dennis |
Submitting output to the FDA in PDF format has become more common recently. Unfortunately, when RTF files are electronically converted to PDF, unwanted format changes can occur, such as border lines no longer being visible. Creating the table using ODS to PDF directly is a better technique. However, PROC REPORT statements written to create RTF tables produce different results when creating a PDF file. Using SAS 9.4, this paper will discuss the ODS to PDF statement along with the PROC REPORT statements which will create a perfectly formatted table that conforms to the FDA Portable Document Format Specifications |
proc report, proc step | source | 8 |
| 47 | CRO, TLF, SOP? OMG!: A Beginner's Guide to the Clinical Research Organization | Mandy Bowen, Otis Evans, Stephen Terry |
Navigating the operational activities of a Clinical Research Organization (CRO) can perhaps be daunting to newly hired entry level employees; in addition to being a complex web of interrelated entities and divisions of labor, the industry is replete with acronyms, protocols, and esoteric jargon. To hopefully help alleviate this confusion, we present this paper as an introduction to the general workings of the CRO industry and its place in the larger clinical trial process. We will focus on the involvement of the sponsor, the CRO, and the Food and Drug Administration (FDA) in the development, analysis, and approval processes | clinical trial, clinical research, phase i, phase ii, phase iii, gcp | source | 7 |
| 48 | Customizing the Graph Templates for a Kaplan-Meier Failure Plot | Hugh Geary | Although PROC LIFETEST in SAS/STAT 13.1 is generally used to generate Kaplan-Meier Survival Plots it can also generate 'Failure' plots. Survival here denotes the time to an event, such as death, and the plot is descending because subjects are removed from the count as they reach the event. In a failure plot subjects are added to the count as they reach the event and they have failed because they failed to avoid reaching the event (of death). The failure plot is an ascending curve. The failure plot is also used to display the 'Time to Recovery' which is a more positive frame of reference. For the survival plot we have the option of modifying templates directly or using macros provided in a paper by Warren F. Kuhfeld and Ying So1. However for the failure plot we must modify the failure plot templates directly. This paper explores modifying the failure templates |
proc step, kaplan-meier plot, macro variable | source | 8 |
| 49 | DATA Step Merging Techniques: From Basic to Innovative | Arthur L. Carpenter | Merging or joining data sets is an integral part of the data consolidation process. Within SAS there are numerous methods and techniques that can be used to combine two or more data sets. We commonly think that within the DATA STEP the MERGE statement is the only way to join these data sets, while in fact, the MERGE is only one of numerous techniques available to us to perform this process. Each of these techniques has advantages and some have disadvantages. The informed programmer needs to have a grasp of each of these techniques if the correct technique is to be applied. This paper covers basic merging concepts and options within the DATA STEP, as well as, a number of techniques that go beyond the traditional MERGE statement. These include fuzzy merges, double SET statements, and the use of key indexing. The discussion will include the relative efficiencies of these techniques, especially when working with large data sets |
hash table, merge statement, by group processing, set statement, key, conditional do loop, proc sql, adverse events, proc step | source | 12 |
| 50 | Defensive Coding by Example: Kick the Tires, Pump the Breaks, Check Your Blind Spots, and Merge Ahead! | Nancy Brucken, Donna E. Levy |
As SAS programmers and statisticians, we rarely write programs that are run only once and then set aside. Instead, we are often asked to develop programs very early in a project, on immature data, following specifications that may be little more than a guess as to what the data is supposed to look like. These programs will then be run repeatedly on periodically updated data through the duration of the project. This paper offers strategies for not only making those programs more flexible, so they can handle some of the more commonly encountered variations in that data, but also for setting traps to identify unexpected data points that require further investigation. We will also touch upon some good programming practices that can benefit both the original programmer and others who might have to touch the code | data cleaning, batch job, raw data, missing value, proc step, drop statement, if-then-else, macro variable, best response | source | 16 |
| 51 | Development of a Clinical SAS University Training Program in Eastern Europe | Erfan Pirbhai, Sergey Glushakov |
Many specialized positions require training above and beyond standard University degree programs for even entry- level work. We are starting to see various industries turning to Universities for specialized training to develop their workforce. To build on the success of our programming team in Eastern Europe and establish a pool of resources for the future, we have developed and implemented a Clinical SAS training program at a University local to our offshore office. The program enrolled students in the Mathematics graduate program. Curriculum was developed to include SAS, Statistics, Clinical Development, English, and Clinical SAS programming - culminating in SAS certification, Internship opportunities, and client placement. A varied approach was utilized for instruction including traditional text and classroom instruction but also overseas interactive web-ex presentations, optional Hot Topic sessions, social media groups, and senior team members as mentors | clinical sas, pharma programming, sas base, sas programming, clinical research, pharmaceutical industry | source | 7 |
| 52 | DIABETES: Submission Data Standards and Therapeutic End Points | Naveed M Khaja | Diabetes mellitus is a chronic metabolic disorder characterized by hyperglycemia. It is caused by defective insulin secretion, resistance to insulin action, or a combination of both. Most patients with diabetes mellitus have either type I diabetes (insulin-dependent or early onset) or type II diabetes (with a complex pathophysiology). While there are drugs available with different mechanism of actions, the most recent under development include glycemic control based on changes in HbA1c where the primary data end point is reduction of HbA1c. The clinical trials now submit the data to the regulatory authorities using CDISC Standards. These standards provide rules for structuring information so data can be entered consistently reducing variability across trials submitted to the agency. The Submission Data standard (SDTM) developed by CDISC includes all the information collected during a study | clinical trial, concomitant medications, sdtm domain, cdisc | source | 9 |
| 53 | Distributed data networks: A paradigm shift in data sharing and healthcare analytics | Jennifer R. Popovic | Administrative claims data are rich sources of information that are used to inform study topics ranging from public health surveillance to comparative effectiveness research. Data sourced from individual sites can be limited in their scope, coverage and statistical power. Sharing and pooling data from multiple sites and sources, however, present administrative, governance, analytic and patient privacy challenges. Distributed data networks represent a paradigm shift in healthcare data sharing and are evolving at a critical time when 'big data' and patient privacy can introduce competing priorities. A distributed data network is one for which no central repository of data exists. Rather, data are maintained by and reside behind the firewall of each data- contributing partner in a network, who transform their source data into a common data model and permit indirect access to those data through the use of a standard query approach | propensity score, subject-level data, insurance claims, proc means | source | 12 |
| 54 | Don't Get Blindsided by PROC COMPARE | Joshua M. Horstman, Roger D. Muller |
"NOTE: No unequal values were found. All values compared are exactly equal." Do your eyes automatically drop to the end of your PROC COMPARE output in search of these words? Do you then conclude that your data sets match? Be careful here! Major discrepancies may still lurk in the shadows, and you'll never know about them if you make this common mistake. This paper describes several of PROC COMPARE's blind spots and how to steer clear of them. Watch in horror as PROC COMPARE glosses over important differences while boldly proclaiming that all is well. See the gruesome truth about what PROC COMPARE does, and what it doesn't do! Learn simple techniques that allow you to peer into these blind spots and avoid getting blindsided by PROC COMPARE! |
proc compare, proc step, data cleaning | source | 7 |
| 55 | Downloading, Configuring, and Using the Free SAS University Edition Software | Kirk Paul Lafler, Charles E. Shipp |
The announcement of SAS Institute's free "SAS University Edition" is an exciting development for SAS users and learners around the world! The software bundle includes Base SAS, SAS/STAT, SAS/IML, Designer Studio (user interface), and SAS/ACCESS for Windows, with all the popular features found in the licensed SAS versions. This is an incredible opportunity for users, statisticians, data analysts, scientists, programmers, students, and academics everywhere to use (and learn) for career opportunities and advancement. Capabilities include data manipulation, data management, comprehensive programming language, powerful analytics, high quality graphics, world-renowned statistical analysis capabilities, and many other exciting features. This presentation discusses and illustrates the process of downloading and configuring the SAS University Edition |
sas studio, proc step, sas base, data governance, proc sql, excel | source | 15 |
| 56 | DS2 with Both Hands on the Wheel | Peter W. Eberhardt, Xue Yao |
The DATA STEP has served SAS programmers well over the years, and although it is handy, the new, exciting, and powerful DS2 is a significant alternative to the DATA STEP by introducing an object-oriented programming environment. It enables users to effectively manipulate complex data and efficiently manage the programming through additional data types, programming structure elements, user-defined methods, and shareable packages, as well as threaded execution. This tutorial is developed based on our experiences with getting started wit h DS2 and learning to use it to access, manage, and share data in a scalable and standards-based way. It facilitates SAS users of all levels to easily get started with DS2 and understand its basic functionality by practicing the features of DS2 |
missing value, hash table, macro function, proc step, macro variable, sas base, proc fcmp, sas function, sas programmer, proc sql, parallel processing, return, sysdate9, macro definition, temporary array, market basket analysis, dataset | source | 32 |
| 57 | Efficiently Produce Descriptive Statistic Summary Tables with SAS Macros | Chunmao Wang | In the pharmaceutical industry, two types of tables are commonly used: One is for categorical variables, computing frequency counts and percentages; another is for continuous variables, computing means, standard derivation, medians, min and max, confidence limits, and ranges, etc. Producing these tables is simple yet trivial, and sometime cumbersome and time consuming, as many variables and many conditions might be requested. Hence a template or tool that can help to create these tables is very useful. In this paper we introduce two simple SAS macros that can be incorporated into your SAS programs easily to generate descriptive statistic summary tables. They will not only save a lot of time but also improve the quality | proc means, confidence interval, proc freq | source | 3 |
| 58 | ELearnSAS - A Win-Win Situation | Vikas Gaddu, Darpreet Kaur |
source | 4 | ||
| 59 | Enhancing Infrastructure for Growth | Amber Randall, William Coar |
As many leadership experts suggest, growth happens only when it is intentional. It is vital to the immediate and long term success of our employees as well as our employers. As SAS programming leaders, we have a responsibility to encourage individual growth as well as provide the opportunity. With an increased workload yet fewer resources, initial and ongoing training seem to be deemphasized as we are pressured to meet project timelines. The current workforce continues to evolve with time and technology. More important than simply providing the opportunity for training, individual trainees need the motivation for any training program to be successful. Although many existing principles for growth remain true, how such principles are applied needs to evolve with the current generation of SAS programmers | pharmaceutical industry, sas programmer | source | 5 |
| 60 | Essential Guide to Good Programming Practice | Shafi Chowdhury, Mark Foxwell, Cindy Q. Song |
Due to increased needs of the pharmaceutical industry and the success of SAS , an ever growing number of programmers are joining the industry all over the world and inevitably moving from one organization to another. Not to forget about code that is shared across companies and with the regulatory agencies. Therefore, to ensure continuity and allow code to be maintained over time, it is essential for organizations that a programming standard is followed. If there is an industry standard GPP guideli ne, that is widely recognized and adopted; then organizations can be sure that when new programmers join, they can start to both use existing code with ease, and develop new code that others already in the organization can easily follow. In addition of course their existing programmers can share code easily with each other. PhUSE GPP steering board has developed a GPP guideline that has been out for more than a year | data step, keep statement | source | 5 |
| 61 | Evaluating SDTM SUPP Domain For AdaM - Trash Can Or Buried Treasure | Xiaopeng Li, Yi Liu, Chun Feng |
Study Data Tabulation Model (SDTM) is commonly expected as industry standard for clinical study electronic submissions to the US Food and Drug Administration (FDA). SDTM has its own standard regulations on data structure for capturing and categorizing variables across all the SDTM parent domains. Analysis Data Model (ADaM), as the FDA recommended analysis submission data model, is generated based on SDTM. Due to the distinctive structure of SDTM data, programmers who generate ADaM compliant data sets frequently encounter difficulties locating or deriving ADaM-oriented variables from SDTM parent domains. This is often difficult because customized or sponsor-specific analysis information needed in ADaM data may not be captured or allowed in the SDTM parent domains. Therefore, maintaining all needed information in SDTM supplemental domains becomes an efficient solution under the SDTM data structure | raw data, label statement, cdisc | source | 7 |
| 62 | Exchange of data over internet using web services (e.g., SOAP and REST) in SAS environment | Kevin Lee | We are living in the world of abundant information, and the ability to seamlessly exchange information between customers, partners and internal business units is vital for success for any organization. Today, much of the information can be accessed and exchanged between different systems over the internet using web services. Web services allow different systems to exchange data over internet. The paper will show how SAS can exchange the data with the different software system over internet using web services. The paper will introduce the basic concepts of web service and its method of communication: SOAP(Simple Object Access protocol) and REST(Representational state transfer). First, the paper will briefly describe SOAP and its structure - HTTP header and SOAP envelop. The paper will show the examples of how SAS programmers send a request to the web service and receive the response from the web service using SOAP in SAS environment | web service, sas programmer, dataset | source | 9 |
| 63 | EXTENDED ATTRIBUTES: A New Metadata Creation Feature in SAS 9.4 for Data Sets and Variables | Joseph W. Hinson | Wouldn't it be nice if one could run the CONTENTS procedure and obtain such system attributes as "Core", "Source", "DataType", "Derivation", "URL", " SAScode", "Programmer", et cetera? With SAS 9.4 Extended Attributes, one is no longer limited to just the familiar predefined system attributes "Name", "Label", "Type", "Length", and "Format" for variables. In fact, with Extended Attributes, one can have an entire SAS code as a data set attribute! These custom data set and variable attributes can be created with the SAS 9.4 DATASETS procedure through its new XATTR statements. The user-defined attributes get embedded in the data set and can be read from PROC CONTENTS, DICTIONARY.XATTRS table, or from the SASHELP.VXATTR view of that table. In the Dictionary Table, extended attributes have the member type "EXTATTR". The resulting data set gets the extension ".sas7bxdat" |
proc step, proc contents, proc datasets | source | 8 |
| 64 | FILLPATTERNS in SGPLOT Graphs | Pankhil Shah | With more updates to PROC SGPLOT in SAS 9.3, there has been a substantial change in graph programming. Programming code size and complexity have been r educed compared to PROC GPLOT/GCHART, and with little effort, one can create much better quality graphs with PROC SGPLOT. However, this transition has a few down falls, as PROC SGPLOT doesn't share some of the useful features of PROC GPLOT/GCHART. One of t hem is showing fill-patterns in graphs produced by PROC GPLOT/GCHART. Currently, PROC SGPLOT doesn't support any direct styling option for showing patterns to differentiate between groups. Also, styling using SG Attribute Map data set used in SG procedures is not useful in the same regards. The main purpose of this paper is to provide a work -around on the above mentioned issue by creating new or modifying an existing SAS predefined templates for SG procedures |
proc step, proc sgplot, bar chart, proc gplot, proc template, proc gchart | source | 6 |
| 65 | Firefighters - clinical trial analysis teams | Iryna Kotenko | It is a quite typical situation for our industry when the team approaching the deadline of some reporting event experiences a lack of resources and is forced to work beyond the regular hours. The reasons for this are: underestimating during early planning of the project, unforeseen circumstances, errors in communication and many others. The consequence of all these is the constant stress for all project participants, which affects the quality of work. In this article I would like to discuss the possibility and feasibility of the developing a team of dedicated specialists that could be involved in the project work for the short term to perform as "firefighters" on the basis of CRO or biometric analytical department of pharmaceutical concern | clinical trial, statistical programmer | source | 4 |
| 66 | Forest Plots: Old Growth versus GMO (Genetically Modified Organism) | Scott Horton | By their nature forest plots (e.g. plotting hazard ratios with their confidence intervals for different factors), created via the SASGRAPH GPLOT Procedure, point to the use of the Annotate Facility to produce figures that are informative and inviting in structure and read-ability. We will explore different ways to produce forest plots that vary in the amount of annotation used to produce the figures and assess the plusses and minuses of the presented approaches |
forest plot, hazard ratio, proc step, confidence interval, proc gplot, macro variable, data science, macro definition | source | 12 |
| 67 | Fresh Cup of Joe: Utilizing Java to automate Define.XML for SDTM Origin mapping from SAS aCRF PDFs | Tony Cardozo | Define.XML specifications provide an extended Clinical Data Interchanges Standards Consortium (CDISC) Operational Data Model (ODM) to describe clinical data and statistical analyses submitted for FDA review. Part of the Define.XML process is identifying and mapping Study Data Tabulation Model (SDTM) variables to their SAS annotated Case Report Form (aCRF) origin. This process can be labor intensive and time consuming. This paper first introduces the programming language Java as a powerful alternative to processing and manipulating PDF documents, and then demonstrates how it may be used to fully automate the SAS aCRF to SDTM variable origin mapping process. In addition to explaining how to implement Java, this paper provides specific examples of how to use Apache PDFBox TM , a free Java-PDF library, to extract all SAS aCRF annotations while setting all XML accessible hyperlinks/destinations within the PDF document | txt, variable list, proc step, cdisc | source | 9 |
| 68 | Generic Macros for Data Mapping | Qian Zhao, Jun (John) Wang, Ruofei Hao |
Data mapping and its QC can be a daunting task. When data are mapped, e.g., to SDTM, the variable values, variable names, variable types, and data structures, etc., may change. Writing generic macros to perform data mapping and QC of the mapping that work for any data set may seem impossible. This paper explores a technique to use the combination of external control files and generic macros to perform data mapping and QC. This technique can be extended to other uses. This paper uses two examples to illustrate the concept. In the first example, we will demonstrate how to QC a data set mapped from a horizontal structure to a vertical structure by isolating a single variable at a time and circulating through all variables. In the second example, we will demonstrate how to write a macro against data mapping specification to generate mapping program | data mapping, vital signs, macro definition, cdisc | source | 9 |
| 69 | Get a Data Dictionary using PROC contents: Easily | Beatriz Garcia, Alberto Hernandez |
SAS programmers often have to work with a minimum set of documentation, and even the most experienced programmers find obstacles in the programming leading to the TLG's. In this example, we are given no variable names in the specifications (or also known as the spec file) or the annotated CRF is missing. A Data Dictionary would be a very good option for starting to analyze our data. This paper will present a macro with the use of PROC CONTENTS for creating a data dictionary that facilitates the way the knowledge of the project and can often reduce iterative questions to the Lead Programmer |
data dictionary, proc contents, proc step, excel, cdisc | source | 5 |
| 70 | Getting Loopy with SAS DICTIONARY Tables: Using Metadata from DICTIONARY Tables to Fulfill Submission Requirements | Jeanina M. Worden | Standardizing data allows for a quick understanding of the contents for FDA reviewers however this is only the case when the standards are followed. Lapses in compliance can create delays in the review process, or worse, give the reviewers concerns over the quality of the data. The DICTIONARY tables that are accessible within Base SAS provide data on your data that can be utilized to check, or create, compliant datasets. This paper will provide examples of requirements and how, with a little looping, issues can be identified and requirements can be met | dictionary tables, proc sql, proc step, temporary dataset, raw data | source | 8 |
| 71 | Getting Rid of Bloated Data in FDA Submissions | Ben E. Bocchicchio, Frank L. Roediger |
As the management of FDA submission data has become more automated, the amount of data that the FDA has to keep track of has grown rapidly. In an attempt to manage this growing mountain of data, the FDA issues Technical Specifications Documents that stipulate rules that submission data should follow to help the review process proceed as smoothly as possible. The most recent version, Study Data Technical Conformance Guide, was issued in December 2014, and contains a link to 314 validation rules that are being proposed to take effect with the Prescription Drug User Fee Act VI (PDUFA VI) in 2017. This presentation includes a survey of the validation rules and identifies resources that you can use to ensure that submission data complies with them. We provide a detailed discussion of 12 high-level rules that apply to folders, transport files, and data sets; we also provide utility programs to help evaluate whether your submission complies with those rules | data cleaning, data validation rules, clinical research, dataset, character variable | source | 8 |
| 72 | Getting Sankey with Bar Charts | Shane Rosanbalm | In this paper we present a SAS macro for depicting change over time in a stacked bar chart with Sankey-style overlays. Imagine a clinical trial in which subject disease severity is tracked over time. The disease severity has valid values of 0, 1, 2, and 3. The time points are baseline, 12 months, 30 months, and 60 months. A straightforward way to represent this data would be with a vertically-oriented stacked bar chart. Visit would be used as the x-axis variable. Disease severity would be used to form the groups in the stacked bars. The y-axis measure would be percent of subjects in each group. Figure 1. A Longitudinal Bar Chart This type of data visualization allows us to see the change within each group over time. However, the data visualization does not allow us to see which group of subjects is driving these changes | bar chart, macro quoting function | source | 9 |
| 73 | Getting the Most Out of PROC SORT: A Review of Its Advanced Options | Max Cherny | The paper describes the use of some underutilized, yet extremely useful, options of PROC SORT. These options include SORTSEQ, CASE_FIRST, NUMERIC_COLLATION, DUPOUT, NOUNIQUEKEY and others. The paper provides easy and reusable examples for each of the options |
proc sort, proc step | source | 6 |
| 74 | Graphical Presentation of Clinical Data in Oncology Trials | Murali Kanakenahalli, Avani Kaja |
Graphs are gaining ground in usage for presenting data in oncology clinical trials. As the options in ODS graphics and Graph Template Language (GTL) have grown over the last few years, so has the demand for details in graphs. Improvements in ODS and GTL ha ve also provided an opportunity to create various types of graphs with ease. This paper discusses different kinds of graphs like KM plots, waterfall plots, swimmer plots, etc. which are used to present data on survival, adverse events, and response. The pa per also showcases our attempts to use the standardized ODS template for all the plots along with Graph Template Language templates |
clinical trial, scatter plot, graph template language, waterfall chart | source | 10 |
| 75 | Grooming of Coarse Data by Smart Listing Using SAS System | Soujanya Konda | Organizations strive to deliver the quality database; one of the crucial and typical parts is data cleaning. Though word data cleanings sounds simpler it is very tedious to the clean entire data and provide the quality data. However; we can try new techniques to manage the data the effectively, efficiently to provide discrepant free data for further process. Data Management (DM) is to deliver a qualitative database to SAS Programming, Statistical Analysis teams for their analysis. DM team is to conduct reviews more often and repeatedly on same reports and to locate the discrepant data would take lots of time; find out the optimized process by creating smart listings in such a way that it identifies, newly entered, modified records on each and every fresh run. In turn; it avoids lot of manual effort, the various challenges, efficient techniques are thoroughly discussed further in this paper | sample, excel | source | 6 |
| 76 | Growing Needs in Drug Industry for NONMEM Programmers Using SAS | Sharmeen Reza | Nonlinear Mixed Effects Modeling (NONMEM) is a type of population pharmacokinetics/pharmacodynamics (pop- PK/PD) analysis that is used in Clinical Pharmacology research. At different stages of drug development the population PK approach, coupled with PD modeling, allows integrated analysis, interpretation, and prediction about drug safety, efficacy, dose-concentration relationship, and dosing strategy. Analysis reports help regulatory agencies evaluate new drug submission, review safety/effectiveness of a drug, and guide drug labeling. Pharmacologists work with NONMEM software which requires pop-PK/PD data in text (ASCII/CSV) format, whereas agencies request data be submitted in SAS transport files. SAS is used to create, maintain, update, and recreate data sets required for modeling purposes, and facilitate the creation of regulatory format as well as the text file |
pd, clinical research, raw data, data cleaning, adverse events, population pk | source | 11 |
| 77 | Hands Free: Automating Variable Name Re-Naming Prior to Export | John J. Cohen | Often production datasets come to us with data in the form of rolling 52 weeks, 12 or 24 months, or t he like. For ease of use, the variable names may be generic (something like VAR01, VAR02, etc., through VAR52 or VAR01 through VAR12), with the actual dates corresponding to each column being maintained in some other fashion - often in the variable labels, a dataset label, or some other construct. Not having to re -write your program each week or month to properly use these data is a huge benefit. Until, however, you may need to capture the date information to properly document - in the variable names (so far VAR01, VAR02, etc.) - prior to, say, exporting to MS/EXCEL (where the new column names may instead need to be JAN2011, FEB2011, etc.). If the task of creating the correct corresponding variable names/column names each week or month were a manual one, the toll on efficiency and accuracy could be substantial |
dataset, label statement, proc contents, excel, proc step | source | 4 |
| 78 | Have a Complicated Graph? Annotate Can be Great! | Scott Burroughs | Back in the day before PROC REPORT became popular to create tables, DATA _NULL_ was the go-to vehicle to do just about anything you wanted in a table. It was versatile and highly customizable. SAS/GRAPH procedures have been adding new functions and features throughout the years, and now we have the powerful SG line of PROCs to use. However, there still are times when they can't do exactly what we want. The ANNOTATE feature of SAS/GRAPH is still being used to append both data-driven and stand-alone objects to graphs, including data points, p-values, and other highlighting features. But could you do the entire figure using it? Certainly! This will not be my first PharmaSUG paper using ANNOTATE to do all of the data presentation |
proc step, study day, treatment arm | source | 6 |
| 79 | Have SAS Annotate Your Blank CRF for You! Plus Dynamically Add Color and Style to Your Annotations | Steven C. Black | Creating the BlankCRF.pdf annotations by hand is an arduous process and can take many hours of precious time. Once again SAS comes to the rescue! Using the SDTM specifications data we can have SAS create all of the annotations needed and place these on the appropriate page within the BlankCRF.pdf. In addition we can dynamically color and adjust the font size of these annotations. This process uses SAS, Adobe Acrobat's FDF language, and Adobe Reader to complete the process. In this paper I will go through each of the steps needed and provide detailed explanations into exactly how to accomplish each task | excel, xls, cdisc | source | 12 |
| 80 | How to Build an "Offshore" Team with "Onshore" Quality | Lulu Swei | In today's competitive global market, many pharmaceutical companies and CROs are building offshore clinical programming teams for various reasons. Often times, we heard cases about offshore outsourcing deals gone bad. For the past year and half, PRA Health Sciences (PRAHS) successfully build a clinical programming team through a joint venture with WuXi Apptec in China. Currently we have clinical programming teams in Shanghai, Beijing and Wuhan. They truly have become an extension of our global programming team, and enable us to provide around the clock service for our sponsors. This paper will discuss the challenges we faced and solutions throughout the process in the following area: 1. Recruitment and Retention 2. Training and Certification 3. Global and Local Management Support 4. Resourcing Process and Policy 5. Project Governance | clinical programming, data transformation | source | 5 |
| 81 | How to Build and Manage a Successful and Effective FSP Service for US sponsors out of India | Debiprasad Roy, Ganesh Gopal |
Over the last few years the Functional Service Provider (FSP) model has been a successful sought after component, adding a new dimension in the relationship between a sponsor and a service provider. FSP has become a significant byword in the data management, statistical programming and biostatistics value segments. This model is gaining momentum owing to the fact that the client - be it a sponsor or a CRO - gain the advantage of having a flexible work force while keeping central control of an outcome based approach. With increasing cost pressures an FSP model based out of a low cost center such as India, if effectively managed and executed, can be of huge overall benefit across the sponsor-CRO value chain. Through a case study, which explores the successful collaboration between a sponsor and a service provider we propose to outline the machinery of this model that has worked well for the past 2 and ½ years and experiencing a growth path reinforced by key management methods | clinical programming, service provider | source | 5 |
| 82 | How to Harness Your Company-s Wiki for World Domination (or - Even Better - to Write the Best Reusable Code Possible) | Kurtis Cowman | How can a group of laymen be smarter than the experts? From betting markets to Wikipedia, every day we see real- world examples of how large groups that are properly motivated and regulated can accomplish nearly impossible tasks. On "Who Wants to Be a Millionaire?" why was the "Ask the Crowd" option correct statistically more often than the "Ask an Expert" option? Daily we ask only our most senior staff, our experts, to design macros and reusable code without properly evaluating whether their effort is indeed the most successful. This paper will show you how, by utilizing a company-accessible web application such as a Wiki, with proper management guidance, you can harness the knowledge of your global programming staff from top to bottom - with the end result of quite literally writing the best reusable code your company has to offer | cpu time, proc hpsplit | source | 8 |
| 83 | How To Use Latent Analyses Within Survey Data Can Be Valuable Additions to Any Regression Model | Deanna Naomi Schreiber-Gregory | The current study looks at several ways to investigate latent variables in longitudinal surveys and their use in logistic regression models. Three different analyses for latent variable discovery will be briefly reviewed and explored. The procedures explored in this paper are PROC LCA, PROC LTA, PROC CATMOD, PROC FACTOR, PROC TRAJ, and PROC SURVEYLOGISTIC. The analyses defined through these procedures are latent profile analyses, latent class analyses, and latent transition analyses. The latent variables will then be included in three separate regression models. The effect of the latent variables on the fit and use of the logistic regression model compared to a similar model using observed data will be reviewed. The data used for this study was obtained via the National Longitudinal Study of Adolescent Health, a study distributed and collected by Add Health. Data was analyzed using SAS 9.3. This paper is intended for any level of SAS user |
latent variable, proc step, regression analysis, logistic distribution, logistic regression, correlation, factor analysis, proc surveylogistic, response variable, sample, proc means | source | 9 |
| 84 | I/O, I/O, It's Off To Work We Go: Digging Into the ATTRC Function | Karleen Beaver | Several file I/O functions allow the SAS programmer to gain data set properties directly without running a procedure on the data set or retrieving the data set observations. These functions can be called in a DATA STEP or can be used in open code. This paper illustrates the improvements in efficiency and capability when using the file I/O function ATTRC, specifically the attr-name parameter values LABEL and SORTEDBY, compared to running the CONTENTS procedure and accessing DICTIONARY tables in the SQL procedure |
macro variable, proc contents, proc step, macro function, dictionary tables, ods output, output, macro loop, proc sql | source | 7 |
| 85 | Implementing Union-Find Algorithm with Base SAS DATA Steps and Macro Functions | Chaoxian Cai | Union-Find algorithm is a classic algorithm used to form the union of disjoined sets and find connected components of a graph from a given set of vertices and edges. The algorithm is often used in data manipulations that involve graphs, trees, hierarchies, and linked networks. A tree data structure can be used to implement the algorithm. A SAS data set is a tuple data structure that is excellent for table manipulations, but cannot be directly applied for implementing Union-Find algorithm. In this paper, we will discuss the programming te chniques that are availab le in Base SAS for the implementation of the Union-Find algorithm. We will explain how to implicitly represent graphs and trees using SAS arrays, and how to build hierarchical trees and perform queries on trees using SAS DATA steps and macro functions. We will also discuss the programming techniques that have been used to minimize average running time of the algorithm | macro function, dataset, sas base, proc sql, macro variable, relational database, conditional do loop, macro definition, macro loop | source | 11 |
| 86 | Implementing Various Baselines for ADaM BDS datasets | Songhui Zhu | Most ADaM datasets can be implemented as BDS data structure. In BDS datasets, if there is only one baseline per subject per parameter, variables ABLFL, BASE, and BASEC can be used to implement baselines and the implementation is pretty straightforward. However, when there are multiple baselines such as time-matched baselines and baselines for cross-over studies, the implementation can be tricky. In some cases, new records need be created. But in some other cases, no new records need to be created. In the meantime, BASETYPE and DTYPE need be implemented appropriately. In this paper, the author explains and provides examples showing how to implement baseline for a variety cases. In addition, this paper will also explain when new records need be created and when new records are not needed | adam dataset, crossover study, cdisc | source | 7 |
| 87 | Improving Data Quality - Missing Data Can Be Your Friend! | Julie Chen | In daily clinical programming work, we always have a good chance of meeting missing data. Missing data can be found anywhere, in a dataset, listing, or table. Missing data could be generated in every step from data collection, to SDTM / ADaM dataset creation, and table/listing production. In some cases, the existence of missing data is the sign of poor data quality. However, if we find missing data and determine where it comes from, then this can be a very good source of information and actually help us to improve data quality. This paper will demonstrate how missing data could be generated, where it is most likely to occur, and present some strategies which can help us to find missing data. The most important thing is that missing data can be informative and investigating it can improve data quality | missing value, proc step, proc freq, data wrangling, data cleaning, by group processing, character variable, proc print, adam dataset, numeric variable, proc sort, clinical data, sdtm domain, proc transpose, data step, data science, cdisc | source | 12 |
| 88 | Inside the DATA Step: Pearls of Wisdom for the Novice SAS Programmer | Joshua M. Horstman, Britney D. Gilbert |
Why did my merge fail? How did that variable get truncated? Why am I getting unexpected results? Understanding how the DATA STEP actually works is the key to answering these and many other questions. In this paper, two independent consultants with a combined three decades of SAS programming experience share a treasure trove of knowledge aimed at helping the novice SAS programmer take their game to the next level by peering behind the scenes of the DATA STEP. We'll touch on a variety of topics including compilation vs. execution, the program data vector, and proper merging techniques, with a focus on good programming practices that will help the programmer steer clear of common pitfalls |
sas programmer, output, pdv, character variable, merge statement, retain, compilation phase, length statement, attrib statement, numeric variable, sas log, proc step, set statement, substr function, sas programming, by group processing, execution phase | source | 11 |
| 89 | Introducing a Similarity Statistic to Compare Data Libraries for Improving Program Efficiency for Similar Clinical Trials | Taylor Markway, Amanda Johnson |
Measuring the similarity between studies allows programmers to follow the best development strategies. If the similarity is overestimated development strategies focused on code reuse will lead to a breakdown in quality or timelines by overextending resources attempting to maintain an unrealistic pace. Alternatively, underestimating the similarity creates inefficiencies through duplication of effort. This paper introduces a similarity statistic (Study Similarity Factor or SSF) to quantify similarity between two studies. This statistic is developed to determine the similarity between any two SAS data libraries with no requirements for following any industry standards such as CDISC. However, the statistic's value is enhanced through the widespread adaptation of such standards. This paper will detail the code using Base SAS to generate the SSF and show that the SSF can be tailored to suit an organization's particular needs | edc, phase iii, cdisc | source | 5 |
| 90 | Introduction to Interactive Drill Down Reports on the Web | Michael G. Sadof, Louis T. Semidey |
Presenting data on the web can be an intimidating project for those who are not familiar with the technology. Luckily, SAS provides users with a method of presenting dynamic reports on a web server utilizing basic SAS syntax and even legacy reports. This w orkshop will walk you through several methods of utilizing PROC REPORT and will teach you some HTML code to present interactive reports on your web server. This technique requires you have several BI components running on your server but does not require a dvanced knowledge of SAS BI or HTML. In this workshop, we will start with the basics and develop a roadmap for producing dynamic reports with Stored Processes without using OLAP cubes or the OLAP Server. In the SAS BI environment, there are many ways of di splaying data on the web. In this workshop, we will describe several of those techniques and create a project that utilizes them. The workshop will start by defining the necessary BI environment |
proc report, proc step, title statement, macro variable, sample, macro quoting function | source | 24 |
| 91 | Is Your Failed Macro Due To Misjudged "Timing"? | Arthur X. Li | The SAS macro facility, which includes macro variables and macro programs, is the most useful tool to develop your own applications. Beginning SAS programmers often don't realize that the most important function in learning a macro program is understanding the macro language processing rather than just learning the syntax. The lack of understanding includes how SAS statements are transferred from the input stack to the macro processor and the DATA STEP compiler, what role the macro processor plays during this process, and when best to utilize the interface to interact with the macro facility during the DATA STEP execution. In this talk, these issues are addressed via creating simple macro applications step-by-step |
macro variable, symbol table, local symbol table, macro facility, macro definition, global symbol table, call symput, macro loop, binary variable, macro call, %if-%then-%else, call execute, macro trigger, &variable, macro put, if-then-else, call symputx, sas log, proc step, chi-square test, put statement, character functions, macro function, do loop, run, compilation phase, execution phase, missing value, macro parameter, %macro parameters, proc sql | source | 22 |
| 92 | Is Your SAS System Reliable? | Wayne (Weizhen) Zhong | If you ask your SAS Server to add 1 + 1, how often will you receive the answer 2? As professionals working in the pharmaceutical industry, we take for granted that our computer systems will follow the Code of Federal Regulations (CFR) Title 21 Part 11, namely that our SAS systems possess 'accuracy, reliability, consistent intended performance'. Computer systems however are complex and difficult to validate completely by IT, and quality lapses result in SAS Systems that get it right "most of the time". This paper discusses ways a SAS System can perform inconsistently, its outward symptoms, and how to prevent it all by running a QA test program. The program is in SAS and full code is provided | error message, sample | source | 9 |
| 93 | ISPLIT Macro: to split large SAS datasets | Hany Aboutaleb | In July 18, 2012, the FDA (CBER) issued a guidance imposing certain requirements on electronic submissions. Under this guidance, an analysis data set must be split if the dataset is greater than 1 GB. As a result, it is important for programmers to have a convenient and reliable tool to perform this conversion. At Biogen Idec we have developed such a tool in the form of a utility macro. This macro can be used to efficiently and effectively split data sets when they exceed the FDA-imposed size limitation | dataset, sample | source | 4 |
| 94 | It Depends On Your Analysis Need | Sandra Minjoe | As an ADaM consultant, I'm regularly asked by friends and coworkers fairly general, and what they think are "quick" questions. My usual response to these types of questions is often "It depends on your analysis need," which I suspect is a bit disappointing to hear. However, my vague answer is because the question itself doesn't have enough detail for me to reply with exactly one correct or best answer. In this paper I delve into some of these questions that I've been asked and describe some of the different answers that each has … depending on your analysis need | adam dataset, baseline characteristics, concomitant medications, medical history, adverse events, imputation, cdisc | source | 10 |
| 95 | It's Not That You Know It, It's How You Show It | Jim Christine | Without a doubt, technical skills are a foundation for success in business. Effective communication is a consistently growing need within the technical community. The way ideas are related, both one-on-one and in groups, can have significant impact on the success of any project. It is not merely about the quantity of the communication, nor the accuracy of the content, but the manner by which the interaction takes place. Electronic mail, teleconferencing, and instant messaging remove important ingredients from the communication process. While many find it sufficiently intimidating to speak in person before an audience of any size, it may be more daunting to present a complex set of ideas without the benefit of facial expressions, voice intonation, or hand gestures. How something is said is often more important than what is actually said. This paper will review effective ways to share information with individuals and projects teams | source | 9 | |
| 96 | Japanese submission/approval processes from programming perspective | Ryan Hara | Japan is one of the world's biggest pharmaceutical markets and as such, development and approval of new drugs in Japan is one of the top priorities for pharmaceutical companies. The intent of this paper is to present Japan-specific submission requirements and also the review/approval process of the Japanese health authority PMDA (Pharmaceuticals and Medical Devices Agency) to a non-Japanese audience, especially programmers. Thus, the main focus of this paper is the specific programming requirements for a submission/approval in Japan that may differ from global processes. This knowledge may help global teams to better understand the specificities of Japanese pharmaceutical market and in turn, strengthen collaboration of global groups with Japanese teams and colleagues | data science, adverse events, data cleaning, data validation rules | source | 7 |
| 97 | Keyboard Macros - The most magical tool you may have never heard of - You will never program the same again (It-s that amazing!) | Steven C. Black | Stop cutting and pasting old code into new programs, stop worrying about forgetting or misplacing really neat code, let SAS remember it for you! All through the use of Keyboard Macros! The term Keyboard macro is a mild misnomer as they are not really macros or at least not in the way that most SAS programmers think of macros. They should really be called Keyboard Rememberalls. Except they actually tell you what you forgot and they can hold all of your secret, and not so secret, code. The title may be an exaggeration but I have found these to really speed up my programming. In this paper I will demonstrate how to create, use, and transfer keyboard macros. I will also discuss a few of the more in-depth aspects of Keyboard Macros with the intent that the reader will use and make them a part of their programming repertoire | proc step, proc freq | source | 5 |
| 98 | Lessons Learned from the QC Process in Outsourcing Model | Faye Yeh | As more and more companies in the pharmaceutical industry (sponsors) adopt an outsourcing model for clinical studies, improving the quality control (QC) process has become one of the main discussions between sponsors and their vendors, in most cases, the clinical research organizations (CROs). This presentation discusses the questions often asked by statistical programmers: How to improve the communication between sponsors and CROs? How to improve the clarity of data and TLF (tables, listings, and figures) specification documents? How to manage the QC processes at both sponsors and CROs sites? What are the efficient ways to verify CRO's deliveries? Having worked as a statistical programmer at both pharmaceutical companies and CROs for more than 20 years, the author will share some experiences and lessons learned on these four topics. The paper will present some suggestions on how to improve the quality control process in the outsourcing model | data science, quality control, mock shell, clinical trial | source | 5 |
| 99 | Let SAS "Modify" Your Excel File | Nelson Lee | It is common to export SAS data to EXCEL by creating a new EXCEL file. However, there are times that we want to update the input EXCEL file instead of creating a new one so t hat we can preserve certain data attributes such as text highlight, font color, and etc. This paper shares a quick tip that utilizes the SAS MODIFY stat ement to update a column in an EXCEL file where the input file and the out put file are the same. The advantage of this approach, documented in this paper, is that it reads data from an edit check specificat ions document (an EXCEL file) and it updates a targeted column in the same document. This paper is written for audiences with beginner skills; the code is written using SAS Version 9.2 on the Windows operating system |
data validation rules, excel, edc | source | 5 |
| 100 | Let SAS Generate XML Code for ACCESS Audit Trail Data Macro | Sijian Zhang | Microsoft ACCESS database is often used for data entry and data storage in small and medium sized projects. As a component of information security, the data audit trail application is usually required to be built in. Since ACCESS 2010, the data macro at the table level is available, which is very helpful for this purpose. However, the data macro setup can be very tedious when the number of variables is large. The alternative way is to export a small ACCESS macro as an XML file template, expand the template to all audit fields, and then import the expanded XML code back into the ACCESS database. This paper will give a brief introduction of audit trail in ACCESS and show how the XML code is generated with SAS macro facility | audit trail, macro definition, macro variable, macro loop | source | 8 |
| 101 | Leveraging ADaM Principles to Make Analysis Database and Table Programming More Efficient | Andrew L Hulme | The purpose of the CDISC Analysis Data Model (ADaM) is to create an analysis database that is both traceable to source data and analysis-ready. In most studies, the source data will consist mostly of SDTM domains and thus it may seem practical to create an analysis database that is only an extended version of SDTM. A method like this will tend to neglect the analysis-ready principle of ADaM, specifically that ADaM domains should be designed using the planned table outputs such that analyses can be recreated from the analysis database with minimal additional programming. Using ADaM principles, this paper discusses several techniques that can increase the efficiency of analysis database programming and make table programming simpler. Examples include storing of treatment information in ADSL, date imputation, creating new records in Basic Data Structure (BDS) domains for new analysis parameters, and deriving specific ADaM variables to prevent inefficient rework in downstream programs | raw data, shift table, imputation, sample, outlier, adverse events, treatment period, proc freq, cdisc | source | 13 |
| 102 | Leveraging Visualization Techniques to tell my data story: Survival Analysis Interpretation made easy through simple programming | Vijayata Sanghvi | This presentation is targeted to focus on new and customizable key features of PROC LIFETEST with in SAS/STAT package from version SAS 9.2. Especially these features support in generating the survival plot with number of subjects at risk, multiple comparisons of survival curves, hall wellner confidence bands, individual vs group plots, panel plots and many more features, which can be easily be adopted in programming with no annotation techniques. The objective of this paper is to help support the end user to get acquainted to very simple options available at their disposal, to help alleviate their programming effort which is a daunting task. We will have many graphical presentation scenarios shared with the user, incorporating these techniques and options, which will make the programmer's and clinical analy st job simple and easy |
survival analysis, proc step | source | 7 |
| 103 | LOCF vs. LOV in Endpoint DTYPE Development with CDISC ADaM Standards | Maggie Ci Jiang | CDSIC ADaM Implementation Guide v1.0 (IG) has defined the standards on how to use the DTYPE terminology when developing endpoint values in ADaM DBS datasets, and provided users some examples to illustrate how to utilize the standards. However, the definitions and examples from ADaM IG are limited to the applications of the sole definition or an individual case such as DTYPE for AVERGE, LOV or Endpoint. When it comes to the situation that multi-criteria are defined in SAP, for example, SAP defines that the Last Observed non-missing Value (LOV) is the endpoint value, and also allows Last Observation Carried Forward (LOCF) to be applied to the scheduled visit if the expected value is missing, which terminology should be used for the derived endpoint DTYPE, LOCF or LOV or just Endpoint? This paper will present a review of experiences implementing endpoint DTYPE in ADaM BDS datasets, and discuss the comprehensive utilization of DTYPE terminology step by step with some practical examples | missing value, clinical trial, visit, cdisc, last observation carried forward | source | 6 |
| 104 | Looking at the Big Picture - Snapshots of Patient Health in SAS | Ruth Kurtycz | Healthcare professionals are exceedingly familiar with the multitude of measurements, diagnostics, and categorizations, which are used in the attempt to effectively define overall health. Commonly seen are measures such as Body Mass Index (BMI), cholesterol level, smoking status, activity level, etc. Yet each measurement itself only communicates a sliver in the big picture question of "how healthy am I?" To help see the big picture, the %REPORT macro has been developed which allows the user to take a "Snapshot" of a particular patient's health at any given time. These snapshots are one-page reports that contain the most recent health diagnostics of interest for a particular patient and the dates they were taken. By displaying these measures together, healthcare providers can gain a more complete understanding of a patient's overall health | macro variable, macro definition, proc step, proc report, data visualization, %if-%then-%else | source | 24 |
| 105 | Looking Beneath the Surface of Sorting | Andrew T. Kuligowski | Many things that appear to be simple turn out to be a mask for various complexities. For example, as we all learned early in school, a simple drop of pond water reveals a complete and complex ecosystem when viewed under a microscope. A single snowflake contains a delicate crystalline pattern. Similarly, the decision to use data in a sorted order can conceal an unexpectedly involved series of processing and decisions. This presentation will examine multiple facets of the process of sorting data, starting with the most basic use of PROC SORT and progressing into options that can be used to extend its flexibility. It will progress to look at some potential uses of sorted data, and contrast them with alternatives that do not require sorted data. For example, we will compare the use of the BY statement vs. the CLASS statement in certain PROCs, as well as investigate alternatives to the MERGE statement to combine multiple datasets together |
proc sort, proc step, missing value, by group processing | source | 10 |
| 106 | Macro to Read Mock Shells in Excel and Create a Copy in Rich Text Format | Rakesh Mucha, Jeffrey Johnson |
It is a common practice for statisticians in pharmaceutical industry to create mock shells as part of the statistical analysis plan. It not only helps reviewers to know what tables, listings, and figures (TFLs) they can expect as part of the analysis, but also gives them a chance to recommend necessary changes based on protocol and/or their clinical expertise. It also serves as a reference for SAS programmers to generate actual tables, listings, and figures based on the mock shells. Even though actual TFLs are typically presented in Rich Text Format (RTF), some statisticians prefer producing mock shells in EXCEL for various reasons like traditionally creating mock shells in EXCEL, and creation of mock shells in EXCEL is relatively easy to RTF. But, it is preferable to create mock shells in Rich Text Format for various reasons like sponsor/programmers prefer shells in RTF and actual TFLs will be presented in RTF |
mock shell, excel, macro variable, proc report, proc step | source | 11 |
| 107 | Managing a Remote Workforce: Making Sense Out of Today-s Business Environment | David J. Polus | Telecommuting has become a given facet of our working environment. The author remembers a time not so long ago (OK, it WAS a long time ago) when a department was located in the same office as each other, and "working from home" wasn't in our vernacular. Technology has allowed workforces to become virtual; the past 10-15 years has seen an exponential increase in the number of programmers that rarely, if ever, see the inside of an office building. While this is a positive from almost every aspect, it also creates some interesting management opportunities. This paper will attempt to dissect telecommuting, from its origins and evolution, to our current state, and where we're headed as an industry | source | 4 | |
| 108 | Managing Custom Data Standards in SAS Clinical Data Integration | Melissa R. Martinez | SAS Clinical Data Integration (CDI) is built on the idea of transforming source data into CDISC standard domains such as SDTM and ADaM. However, you can also define custom data standards to use within CDI. This paper describes several scenarios for using custom data standards, such as incorporating company-specific requirements, developing therapeutic area or compound level domains, and even using study-specific data standards. This paper also describes in detail how to set up the required data sets to define a custom data standard, register the custom data standard with SAS Clinical Standards Toolkit (CST), and import the custom data standard into SAS Clinical Data Integration. In addition, best practices are discussed for both managing the security of SAS Clinical Standards Toolkit Global Library that is central to the SAS Clinical Data Integration application and for the overall process of developing custom data standards | data standard, reference data, macro variable, clinical trial, sas base, raw data, data cleaning | source | 17 |
| 109 | Managing the Evolution of SAS Programming | Carey G. Smoak | Over the past 30+ years, I have seen many innovations in SAS as a software tool. While SAS software has become more and more innovative, the SAS programming profession in the pharmaceutical / biotechnology industry has both evolved and de- evolved in some important ways. The evolution is mainly due to advances in SAS as a software tool. Thus the SAS programmer is challenged to keep up with new innovations in the SAS software. At the same time, the daily work of a SAS programmer may be de-evolving due to working in a specification driven environment and standardization (CDISC and macros). Standardization and specifications can be beneficial, but SAS programmers may become bored in environments that are highly standardized. The recent growth in the data scientist profession may offer a way for SAS programmers in the pharmaceutical / biotechnology industry to grow their careers and take on more daily tasks. This paper will present some ideas for growing the SAS programming profession | sas programmer, data science, sas programming, pharmaceutical industry, cdisc | source | 4 |
| 110 | Means Comparisons and No Hard Coding of Your Coefficient Vector - It Really Is Possible! | Frank J. Tedesco | When doing mean comparisons using a linear vector of coefficients, typically we need to modify our SAS PROC statements to account for different study designs, for instance when doing a submission (Phases I, II,III). What if you didn't need to hard code your linear vector in every program specific to the analysis? The number of linear coefficients in the vector are dependent on the number of treatment levels and cohort(s) being analyzed, in other words the levels of your independent variable(s) will change with each study design. This paper will use pharmacokinetic data as an example with the added difficulty of analyzing drug metabolites which often have parameter values with measurements below quantifiable limits. Often this causes treatment levels and cohorts to drop from the analysis |
class variable, macro definition, proc genmod, hypothesis testing, where statement, data cleaning, proc glm, macro variable, proc step, macro loop, %if-%then-%else | source | 8 |
| 111 | Medication Adherence in Cardiovascular Disease: Generalized Estimating Equations in SAS | Erica Goodrich, Daniel Sturgeon |
Medication non-adherence has been estimated to generate $290 billion annually in medical costs (NEHI, 2009). Not only is this an extremely expensive dilemma, it has consequences including worsening conditions, increased hospitalizations and readmissions. Recent medical based evidence had lead to an increased interest in investigating individuals' adherence to cardiovascular disease-related medications. Data from medical databases from a regional health plan of subjects on cardiovascular medications were sampled as subject matter. Binary data using a 70% possession ratio (PR) cutoff for determining medication adherence was analyzed over semi-quarterly time frames. Results of Generalized Estimating Equation (GEE) models are explained through SAS output | correlation, proc step, proc genmod, response variable, covariance, logistic regression, sample, longitudinal data, logistic distribution, regression analysis, binomial distribution | source | 8 |
| 112 | Missing Data For Repeated Measures: Single Imputation VS Multiple Imputation | Giulia Tonini, Simona Scartoni, Camilla Paoli, Andrea Nizzardo, Angela Capriati |
Missing data is often a major issue in clinical trials, especially when the outcome variables come from repeated assessments. Single imputation methods are widely used. In particular, when data collection is interrupted at a certain time point, Last Observation Carried Forward (LOCF) is usually applied. Regulatory agencies advise to use the most conservative approach to impute missing data. As a drawback, single imputation methods do not take into account imputation variability. In this work we intend to compare single imputation versus multiple imputation methods in order to verify the effect on the successive inferential a nalysis, especially in terms of statistical significance of results. In particular we intend to verify if a more conservative single imputation method can be considered also a conservative method in term of statistical significance, respect to multiple imp utation, where the higher variability can reduce the probability of having a significant result | imputation, multiple imputation, missing value, sample size, sample, type i error, significance level, clinical trial, null hypothesis, proc step, proc mi, repeated measures, proc mixed, likelihood function, randomization, treatment effect, last observation carried forward | source | 10 |
| 113 | Mlibcompare - keep an eye on the changes of your data | Wen Shi | When developing the regular submission package, we usually follow the order of generating SDTM first, then ADaM, then the TLF outputs. In real practice, we may keep receiving many cuts of new data and still need to guarantee the function of our programs. Macro Mlibcompare will help you quickly identify the structural changes of your data sets in your library. It combines the results from several SAS procedures, analyzes them and generates an EXCEL summary report with the Microsoft EXCEL DDE interface |
sample, create table, excel, if-then-else, proc compare, proc step, cdisc | source | 29 |
| 114 | MMRM: Macro for Selecting Best Covariance Structure with the Method of Interest | Linga Reddy Baddam, Sudarshan Reddy Shabadu, Chunxue Shi |
In clinical trial analysis, while handling longitudinal contin uous data, there are very often cases that the Mixed Model Repeated Measures (MMRM) tool is used to deal with the continuous endpoints when an outcome is collected multiple times. It is usually up to the statistician to spec ify the criterion for identifyi ng the best covariance structure against the chosen model among all possible covariance structur es arranged in particular order of interest, or in the way it has been specified in Statistical Analysis Plan and/or Protocol | covariance structure, covariance, data science, degrees of freedom, sample, clinical trial, proc mixed | source | 7 |
| 115 | Multilevel Randomization | Marina Komaroff, Lois Lynn |
Randomization in clinical trials is essential for the success and validity of a study. PROC PLAN is an important SAS procedure that generates randomization schedules for variety of experimental designs. Th is procedure was developed for the major types of randomization like simple, block and stratified randomization where the latter controls and balances the influence of covariates. In addition to SAS documentation, multiple papers were written to explain how to adapt and enhance the procedure with DATA steps and/or PROC FORMAT. Clinical research in transdermal medicine introduces the situation where a multilevel randomization is required for levels like treatment, location (arm, thigh, back, etc.) and side (left, right, upper, center, etc.) of a patch application while retaining balance at each level and combination of levels . Schedules get especially complicated for cross -over studies where location and side of patch application need s to be rotated by period and balanced as well |
randomization, treatment arm, proc step, crossover study | source | 10 |
| 116 | No Regrets: Hiring for the Long Term in Statistical Programming | Chris Moriak, Graham Wilson, Elizabeth Meeson |
Recruiting statistical programmers for lead positions who can be subject matter experts, plan work and direct teams is a formidable task. Finding the right combination of programming experience, clinical development knowledge, and leadership can prove to be elusive. After finding candidates, making the accurate decision to hire might be indefinable. In a widely quoted study on recruiting by the Recruiting Roundtable, 50% of hires are regretted either by the employer or by the new employee within just six months.1 With the average number of work days to fill an opening being 58 days for companies >5000 employees2, can a pharmaceutical company better its odds in making the right selection over just flipping a coin? Improving ones odds means creating a better assessment process for both the company and the candidate. The company must assess whether a candidate meets minimum qualifications, has the capability to perform the job, and fits into the business' culture | statistical programmer, clinical programming, clinical research, clinical trial, data science | source | 7 |
| 117 | Not Just Merge - Complex Derivation Made Easy by Hash Object | Lu Zhang | Hash object is known as a data look-up technique widely us ed in data steps for many of its advantages. Before SAS 9.2, hash object was mostly used to accomplish efficient data merging in a DATA STEP. However, the hash object did not allow storing and retrieving duplicate keys before SAS 9. 2. This constraint was eliminated in SAS 9.2 where in this version hash objects in DATA STEP can perform data look-up even though the keys are not unique. With this improvement, many complex derivations in our daily work become more straightforward and simpler than before. In this paper, the added features to hash object in SAS 9. 2 will be discussed. Also examples in analysis database derivations will be given to illustrate how hash object wo rks to improve the implementa tion efficiency of complicated derivation algorithms |
hash table, merge statement, unique key, adverse events, data merging | source | 5 |
| 118 | Now You See It, Now You Don't - Using SAS to De-Identify Data to Support Clinical Trial Data Transparency | David Handelsman | Clinical trial data transparency initiatives will only be successful if the data being shared is properly de-identified in order to protect patient confidentiality and comply with national regulations, while still supporting investigation and analysis. In this emerging area, however, the rules regarding clinical trial data de-identification can be confusing, open to interpretation and difficult to understand. At a basic level, de-identification means that someone accessing trial data should not be able to match an individual patient's data to a real-life individual. This means not only obfuscating patient ID information (patient number and site number, for example), but also masking all dates, eliminating references to sensitive terms like "HIV", and a wide variety of additional, and often confusing, rules. All of these data modifications must be done in such a way that the clinical trial data can still be successfully analyzed on its own, or when combined with additional trial data | clinical trial, clinical data, subject-level data, data cleaning, macro definition | source | 7 |
| 119 | OSI Packages: What you need to know for your next NDA or BLA Submission | Thaddea Dreyer, Tatiana Scetinina |
The FDA's Office of Scientific Investigations (OSI) has responsibility to select sites for on-site inspection as part of the FDA's Bioresearch Monitoring (BIMO) program and needs each sponsor's help in order to perform this selection quickly and efficiently. Sponsors are asked to provide a variety of site-level information so the OSI can identify sites of interest - for example, high enrolling sites, sites whose data may be swaying the results, sites with prior inspection issues, etc. In late 2012, the FDA released new OSI materials (draft guidance for industry, dataset specifications, and a webinar) that describe what sponsors should include in their NDA/BLA submissions to support the OSI's efforts. This paper provides an overview of the released OSI request components (Parts I, II, and III), and it describes how AstraZeneca prepared an OSI package for a recent NDA submission | clinical trial, clinical data | source | 10 |
| 120 | Patient Profiles and SAS Visual Analytics | Pritesh Desai, S. Robert Collins |
Clinical trials data are collected from many different sources. Once the trial begins, all of the data needs to be cleaned, explored and reviewed before they are processed. Patient profiles are used for many phases of the process. These profiles can take many forms depending upon the reviewer and the purpose. An ideal patient profile would contain all current data for each subject thereby empowering reviewers to rapidly assess the patient's status while still allowing access to any level of detail desired. This paper will explain how end users of various technical skill levels can use SAS Visual Analytics (VA) to achieve this, as well as other productivity improvements throughout the clinical trial process | sas visual analytics, bar chart, clinical data, clinical trial, adverse events | source | 9 |
| 121 | Perl Regular Expression in SAS Applications | Yang Wang, Abdul Ghouse |
SAS provides text functions to perform search, replace and other manipulations on character strings. SAS also provides a set of functions that works with Perl regular expression (PRX functions) to perform string tasks with more flexibility and power. In this paper, we use applications or macro examples to demonstrate advantages of the PRX functions: An automated emailing utility: A SAS application that automates a process that selectively sends out report files to different email addresses based on a specific schedule. User-defined strings of Perl regular expression used to select the target report files are maintained in a lookup file. A smart EXCEL reader: EXCEL allows mixed data type in one column but SAS dataset column only allows a single data type. In order to read in all the cells in their intended format, this SAS macro identifies the cell format by PRX functions and casts the right data type for the column |
excel, string functions | source | 7 |
| 122 | Phantom of the ODS - How to run cascading compute blocks off of common variables in the data set for complex tasks. | Robin M. Sandlin | This paper teaches an SAS-based Stored Process formatting technique to be used stand-alone or combined with other style techniques. This methodology is a prototype framework for use by SAS programmers who may not be able to achieve similar fashion results using more sophisticated techniques (such as inline "^S" techniques) . This paper gives examples and complete code, leveraging users knowledge in two different areas, the SQL procedure, using PROC SQL basic techniques and the REPORT procedure, using the PROC REPORT compute block framework (albeit multiple blocks) in what is called "Phantom of the ODS." Due to the nature of the way that compute blocks resolve, the execution of the block prior to its application effectively results in only one style statement per block without resorting to advanced techniques such as inline style, etc. This effect, combined with the one compute block per variable rule, normally results in one style statement per column or grouping variable |
proc step, proc report, proc sql | source | 6 |
| 123 | PhUSE De-Identification Working Group: Providing De-Identification Standards to CDISC Data Models | Jean-Marc Ferran, Jacques Lanoue |
In this era of Data Transparency and sharing data with researchers, companies are defining their processes and de-identification guidance in order to comply with data privacy regulations. In particular, it is possible for researchers to request access to data across sponsors and both the difference of data models and de-identification techniques may make the analyses cumbersome and error-prone. While the CDISC data models are now adopted in the industry, PhUSE launched in July 2014 a dedicated Working Group to define de-identification standards for CDISC data models starting with SDTM. Participants from Pharmaceuticals, CROs, Software Vendors, CDISC specialists, Data Privacy specialists and Academia have joined forces to define a set of rules against SDTM to provide the industry with a consistent approach to data de-identification and increase consistency across anonymized datasets | proc freq, privacy, clinical research, clinical trial, data standard, character variable, cdisc | source | 8 |
| 124 | Picture this: Hands-on SAS Graphics Session | Kriss Harris | Would you like to be more confident in producing graphs and figures? Do you understand the differences between SGPLOT, SGSCATTER and SGPANEL? Would you like to know the different layout options in Graph Template Language (GTL)? Would you like to know how to easily create industry standard graphs such as Adverse Event timelines, Kaplan-Meier plots and Waterfall plots? Finally, would you like to learn all of these methods in a relaxing open environment that fosters questions? Great, then this topic is for you. In this Hands-on SAS Graphics Session you will be skillfully guided through SGPLOT, SGSCATTER, SGPANEL and GTL. You will also complete fun and challenging SAS Graphics exercises to enable you to retain what you have learned more easily. This Hands-on SAS Graphics session is structured so that you will learn how to create the standard plots that your manager requests, how to easily create simple ad-hoc plots for your customers and also how to create complex graphics |
macro variable, scatter plot, probability distribution, proc step, box plot, macro loop | source | 14 |
| 125 | Proc Compare: Wonderful Procedure! | Anusuiya Ghanghas, Rajinder Kumar |
In Pharmaceutical industry, we work with huge volume of data. Sometime we want to cross check the data, if it is as per specification or sometimes after making some modifications we want to cross check if only desired changes has been made. Here comes in p icture one of the wonderful procedures, PROC COMPARE provided by SAS. It helps us in comparing two datasets for their equality or difference with respect to number of observations, number of variables, dataset label, variable attributes and finally values of those variables. If used properly, this procedure can be of great help. It checks for all these, along with some other things in two different datasets or sometime in same dataset. But if not used properly, it can be quite problematic also. Every SAS p rogrammer will be happy to see "NOTE: No unequal values were found. All values compared are exactly equal. " as PROC COMPARE output |
proc compare, proc step | source | 12 |
| 126 | PROC PRINT - The Granddaddy of All Procedures, Enhanced and Still Going Strong | David W. Franklin | The PRINT procedure, or PROC PRINT, has been around since SAS first began and is considered one of the granddaddy procedures. Although this procedure has been replaced in part by the REPORT procedure, there is still a lot you can do with it. This paper looks at first a simple dump of data, then dresses it up with the use of statements like the BY and ID statements to publication ready output. Next, output is cranked up a notch to demonstrate how PROC PRINT enhancements can be used to produce HTML (with graphics and links), RTF and PDF (with bookmarks). Along the way the paper will also touch on techniques for post processing to make your output more alive |
proc print, proc step, ods pdf, output delivery system, ods html, proc template, by group processing, proc report, file statement | source | 10 |
| 127 | PROC SQL for SQL Die-hards | Mary Jessica Bennett, Barbara Ross |
Inspired by Christianna William's paper on transitioning to PROC SQL from the DATA STEP, this paper aims to help SQL programmers transition to SAS by using PROC SQL. SAS adapted the Structured Query Language (SQL) by means of PROC SQL back with Version 6. PROC SQL syntax closely resembles SQL, however, there some SQL features that are not available in SAS. Throughout this paper, we will outline common SQL tasks and how they might differ in PROC SQL; as well as introduce useful SAS features that are not available in SQL. Topics covered are appropriate for novice SAS users |
proc sql, proc step, create table, date variable, character functions, macro variable, datepart | source | 7 |
| 128 | PROC SQL: Make it a monster using these powerful functions and options | Arun Raj Vidhyadharan, Sunil Mohan Jairath |
PROC SQL is indeed a powerful tool in SAS. However, we can make it even more powerful by using certain PROC SQL functions and options. This paper explores such functions and options that take PROC SQL to the next level |
proc sql, proc step, coalesce function, sas log | source | 8 |
| 129 | Proc STREAM: The Perfect Tool For Creating Patient Narratives | Joseph W. Hinson | STREAM is a new procedure in SAS 9.4 which allows free-form text embedded with macro elements to be streamed to an external file. On the surface, one could immediately say: "big deal; I can easily do that with PUT statements, or even via text assignments". But this nifty tool can do far more -- embedding even macro programs inside text. Furthermore, when the macro-embedded text is processed by the SAS Word Scanner, the SAS syntax rules get ignored. The procedure simply streams text directly to an external file, bypassing entirely the SAS compiler in the process but engaging only the Macro Processor. Thus, PROC STREAM really shines when dealing with text containing such SAS syntax-violators as HTML or XML tags. Patient narratives also present challenging text processing. Life would have been much easier if each patient had at most one adverse event, took only one concomitant medication, and possessed only a single medical history situation |
proc step, macro variable, adverse events, concomitant medications, macro call, medical history | source | 12 |
| 130 | PROC TRANSPOSE For Fun And Profit | John J. Cohen | Occasionally we are called up on to transform data from one format into a "flipped," sort of mirror image. Namely if the data were organized in rows and columns, we need to transpose these same data to be arranged instead in columns and rows. A perfectly reasonable view of incoming lab data, ATM transactions, or web "cli ck" streams may look "wrong" to us. A lternatively extracts from external databases and production systems may need massaging prior to proce eding in SAS . Finally, c ertain SAS procedures may require a precise data structure, there may be particular requirem ents for data visualization and graphing (such as date or time being organized horizontally/along the row rather than values in a date/time variable), or the end user/customer may have specific deliverable requirements. Traditionalists prefer using the DATA STEP and combinations of Array, Retain, and Output statements . This approach works well but for simple applications may require more effort than is necessary |
proc transpose, proc step, excel, out=, proc sort, dataset, date variable, macro variable, by group processing, keep statement, set statement, missing value, proc sql | source | 18 |
| 131 | Process and Programming Challenges in Producing Define.xml | Mike Molter | Companies all over the pharmaceutical industry are looking for solutions for creating define.xml. The unfamiliarity of a foreign format like XML; the business rules surrounding the content; the intricacies of the metadata - all of these paint a picture of a daunting task that requires specialized software to be operated by specialists in the field. In this paper we'll see that while budget-saving Base SAS solutions do exist, the task is not trivial. We'll also see that while programming challenges are part of the puzzle, challenges in setup and process are where much of the task's energy and resources need to be dedicated | annotated crf, excel, data step, cdisc | source | 13 |
| 132 | Programming Pharmacokinetic (PK) Timing and Dosing Variables in Oncology Studies: Demystified | Kiran Cherukuri | Pharmacokinetic (PK) analysis is a major part of clinical trials intended to characterize the time course of the drug and/or metabolite concentrations after drug administration in order to obtain information on drug disposition in humans. This paper discusses about how timing and dos ing variables are derived through a generic program to facilitate PK analysis. In oncology studies, the last timepoint of one cycle is often also the first timepoint of the subsequent cycles. Accommodating multiple timepoints for a single PK concentration data point on two different time scales is important to facilitate analysis, but presents a programming challenge. This challenge is described and solutions provided. I n addition, the significance of these variables as they are used for concentration time profiles and derivation of PK parameters such as AUC, Cmax, and Tmax is presented | key, sample, pk parameter, clinical trial | source | 9 |
| 133 | Proper Parenting: A Guide in Using ADaM Flag/Criterion Variables and When to Create a Child Dataset | Richann J. Watson, Karl Miller, Paul K. Slagle |
There has always been confusion as when to use some of the various flags (ANLzzFL, CRITyFL) or category variables (AVALCATy) reserved for ADaM basic data structure (BDS). Although some of these variables can be used interchangeably it might help to come up with rules to help keep a consistency of when to use these variables. Furthermore, there may be some situations where the creation of a new data set would be the better solution. These data sets are referred to as parent-child data sets throughout the paper. This paper will focus on rules that the authors follow when developing ADaM data set specifications for the proper use of ANLzzFL, CRITy/CRITyFL, AVALCATy or when a parent-child data set option is more feasible | proc hpsplit, change from baseline, cdisc | source | 10 |
| 134 | Prospecting for Great Programmers - Advice from a Hiring Manger to Make You a Solid Gold Addition to the Team | Christopher C. Hurley, James Zuazo |
Eureka! SAS programming in the pharmaceutical industry is a very rewarding career. For the manager, when hiring or dealing with the day to day, having extraordinary SAS programming resources to count on is as good as gold. When looking at a stack of CVs, how do we shake the pan to find the ones that are truly sparkling? That is, how do we select the ones to interview? What makes a good interview and more importantly a good hire? Once integrated into the team, how does the programmer gain trust, and elevate to be the real deal and not just iron pyrite? You can stand out by considering some nuggets of advice that can serve to differentiate you from the others in the eyes of your manager and peers. This paper is for everybody. It breaks down concepts from the manager and employee perspectives, before and after a programmer is added to a team. This is important because job changes occur frequently in the course of a career | sas programming, adam dataset | source | 6 |
| 135 | Qualification Process for Standard Scripts in the Open Source Repository with Cloud Services | Hanming Tu, Dante Di Tommaso, Dirk Spruck, Christopher C. Hurley, Nancy Brucken |
This paper describes the steps, platform and progress of initiating a qualification process for standard scripts hosted in a code repository with cloud services. The open source repository is used as a collaborative development platform for hosting the specialized programs to be used as analytic tools for clinical trial research, reporting, and analysis through cloud services. We will present how to access the repository, how to contribute to the repository and more importantly how to ensure the quality of the scripts being stored in the repository | clinical trial, data transformation | source | 6 |
| 136 | R you ready to show me Shiny for PharmaSUG 2015 | Amulya R. Bista, Jeff Cai |
This paper demonstrates the power of open source applications, R together with Shiny, and illustrates an efficient way to review source data and perform exploratory analysis without the need for extensive programming. Shiny is a web application framework for R developed by RStudio that allows creating simple-to-use web application with dynamic data filters and real -time exploratory analysis (RStudio, Inc) . Shiny allows users to integrate additional R packages, JavaScript and CSS into the backend program for any customization. In addition, Shiny also include s enhanced data security and authentication system s such as LDAP, Active Directory and Google Account. The Shiny web app is robust enough to adjust its layout to any platforms a nd also can be used by beginner a s the app only requires point and click for data virtualization | raw data, data review | source | 5 |
| 137 | Regaining Some Control Over ODS RTF Pagination When Using Proc Report | Gary E. Moore | When creating RTF files using SAS PROC REPORT, some of the control over pagination is lost because third party programs like Microsoft Word determine the pagination during rendering. Often, this pagination does not appear appropriate or esthetically pleasing. We can regain some of that control using the break option with PROC REPORT and manually setting page break points in the data. This requires an examination of RTF pagination while answering some questions about the data and report. What elements factor into the determination of pagination? What types of pagination are possible? What type of pagination is required? This paper examines these questions and provides a SAS Macro that will assist in manually setting break points for pagination |
proc report, macro variable, proc step, %if-%then-%else, macro definition | source | 8 |
| 138 | Reproducibly Random Values | William Garner, Ting Bai |
For questionnaire data, multiple responses may be provided. However, a single value, chosen at random, is required for analysis. We propose a method to randomly select between the multiple responses which yields the same value at a subsequent analysis, when additional data has been collected | seed, final analysis | source | 7 |
| 139 | SAS Grid: Simplified | Rajinder Kumar | For most organizations, huge volume of data means big trouble, because it has great impact on speed and accuracy of data analysis. Due to high demand of reliable environment and faster response time for huge data and large number of users from same organiz ation, SAS Grid is in great demand. This paper puts light on some of common features of SAS Grid. It also provides some of the challenges in SAS Grid and alternate solution for th em. It shares different examples related to SAS Grid 's challenges and their s olutions. For example, few options or functional ities which work fine in normal SAS, may need slight modification before getting used in SAS Grid. This paper provides details about all these problems, root cause of the problem and their possible solutions (if any). I am sure, as use of SAS Grid is becoming more popular, these will help all the end users in finding answers to their most common questions | sas grid, proc import, proc step | source | 6 |
| 140 | SAS Programming Tips, Tricks and Techniques for Programmers | Kirk Paul Lafler | Explore a collection of proven tips, tricks and techniques offered in the base-SAS Software. Attendees learn system options to aid in improved productivity; SQL procedure and table options to influence the optimizer to use specific join algorithms; accessing variable attributes in a table with a single statement; using table integrity constraints to prevent data integrity issues; and using user-defined tools with SAS meta-data Dictionary tables and SASHELP views |
proc univariate, options statement, proc sql, proc step, dataset, dictionary tables, macro facility, macro variable, macro parameter, %macro parameters, sas log, ods pdf, ods rtf, sas output, if-then-else, ods html | source | 16 |
| 141 | SAS Reports on Your Fingertips? - SAS BI is the Answer for Creating Immersive Mobile Reports | Swapnil Udasi | The widespread use of smartphone and tablets has created a shift in how information is consumed. Nowadays it's very important for the users to be able to access the information which is latest, readily available wherever they are located. So is it possible in SAS to access the reports through your mobile or tab? The answer is YES! With the help of SAS BI we can now access the information at our fingertips and make decisions at any place and any time. We can even interact, navigate, filter and drill down the reports and make faster decisions. We can also easily annotate to share thoughts, ideas and questions and even add audio/video comments and share them via email | adverse events, bar chart, scatter plot | source | 10 |
| 142 | SAS Tools for Working with Dataset-XML files | Lex Jansen | Dataset-XML defines a new CDISC XML standard format for transporting tabular data in XML between any two entities. That is, in addition to supporting the transport of data sets as part of a submission to the FDA, it may also be used to facilitate other data interchange use cases. For example, the Dataset -XML data format can be used by a CRO to transmit SDTM or ADaM data sets to a sponsor organization. Dataset-XML supports SDTM, ADaM, and SEND CDISC data sets but can also be used to exchange any other type of tabular data set. In 2014 the FDA conducted a pilot to evaluate Dataset -XML as a solution to the challenges of the SAS XPORT v5 transport format. The metadata for a data set contained within a CDISC Dataset -XML document must be specified using the CDISC Define- XML standard. Each CDISC Dataset-XML document contains data for a single data set, but a single CDISC Define-XML f ile describes all the data sets included in the folder | dataset, sas log, proc compare, data cleaning, character variable, format statement, proc step, numeric variable, label statement, clinical trial, macro call, macro parameter, reference data, missing value, sas base, variable, cdisc | source | 18 |
| 143 | Schoveing Series 1: Motivating and Inspiring Statistical Programmers in the Biopharmaceutical Industry | Priscilla Gathoni | Is it possible as a people manager to arouse enthusiasm among the associates that work with you? What creates passion, enjoyment, acceptance, and a love for the work we do in analyzing clinical trial data? Is it possible to wake up and say, "I love my job!" This paper explores 7 habits that a people manager can inhabit and also instill in statistical programmers to create a healthy and balanced work life. Each habit explores ways in which effective results can be achieved through a change in human behavior and the thought process. The paper shows that bad habits can be broken and good habits formed. We can choose the right actions, which in turn influences our reactions. We have dominion over our thoughts, feelings, and life - making conscious choices is inevitable if you want to change. The legacy and attitude we carry at work transcends to our homes, children, and family | statistical programmer, data science | source | 10 |
| 144 | SDTM Annotations: Automation by implementing a standard process | Geo Joy, Andre Couturier |
Annotating a Blank Case Report Form -- a collection of unique CRF pages stored in a file named BlankCRF.pdf is an important part in submission activity and a lot of productive time is spent to manually annotate each page. Maintaining consistency across annotations, validating them against submission data set are all manual and error prone activities. This paper talks about an effective way to automate the entire SDTM annotation process by setting up an annotation database and by reusing the annotations done by earlier studies with the help of SAS and PDF editing tool. This is particularly useful as majority of the standard CRF pages are reused in multiple trials and programmers can annotate those pages in almost no time | macro variable, annotated crf, cdisc | source | 11 |
| 145 | SDTM TE, TA, and SE Domains: Demystifying the Development of SE | Kristin Kelly, Fred Wood, Jerry Salyers |
There is a necessary relatedness among the SDTM Trial Design domains, TA (Trial Arms) and TE (Trial Elements), and the special-purpose domain, SE (Subject Elements), that serves to convey both the planned (TE/TA) and actual (SE) treatment paths for a subject within a study. The SE domain is derived from the subject-level general observation class domains based on 1) the Start and End rules in TE, and 2) the Transition and Branching rules (TATRANS and TABRANCH) in the TA domain. The SDTMIG principles state that there are no gaps between Elements, meaning that the start date/time of an Element (SESTDTC) is the same as the end date/time of the previous Element (SEENDTC). The SE domain can be cumbersome to create if the code attempts to account for both the Start Rule and End Rule for each Element | clinical trial, sdtm domain, cdisc | source | 6 |
| 146 | Sensitivity Training for PRXers | Kenneth W. Borowiak | Any SAS user who intends to use the Perl style regular expressions through the PRX family of functions and call routines should be required to go through sensitivity trai ning. Is this because those who use PRX are mean and rude? Nay, but the regular expressions they write are case sensitive by default. This paper discusses the various ways to flip the case sensitivity switch for the entire or part of the regular expression , which can aid in making it more readable and succinct. Keywords: case sensitivity, alternation, character classes, modifiers, mode modified span | proc step, proc print | source | 6 |
| 147 | Simple Tests of Hypotheses for the Non-statistician: What They Are and Why They Can Go Bad | Arthur L. Carpenter | Hypothesis testing is a central component of most statistical analyses. The focal point of these tests is often the significance level, but what does this value really mean and how can we effectively use it? And perhaps more importantly, what are the pitfalls and dangers in its interpretation? As we conduct statistical tests of hypotheses, are there other things that we should be doing or looking out for that will aid us in our decision making? After years of academic study, professional statisticians will spend additional years gaining a practical knowledge and experience so that they can correctly conduct and correctly interpret the results of statistical tests. You cannot gain these insights over night, however, this tutorial provides a basic introduction to the concepts of hypothesis testing, as well as, what you should look for and look out for, while conducting statistical tests of hypotheses | significance level, sample, null hypothesis, type ii error, type i error, proc ttest, standard deviation, proc step, sample size, hypothesis testing, anova | source | 9 |
| 148 | Simplicity is the Soul of Efficiency: Simple Tips and Tricks for Efficient SAS Programming | Shefalica Chand | Efficient SAS programming is one of the keys to success for SAS programmers and in-turn to their organizations. SAS programmers are always looking for tips and tricks to make their job more effective and less time consuming, without compromising on the quality. This saved time and resources can then be utilized in learning new skill sets, improving existing processes and many other infrastructure development ideas and initiatives. TextPad is one such simple tool; when used in conjunction with SAS, it can do wonders. This paper sheds light on aspects of using TextPad for efficient SAS (Statistical/Clinical) Programming techniques | proc transpose, proc step | source | 8 |
| 149 | Simulate PRELOADFMT Option in PROC FREQ | Ajay Gupta | In Pharmaceuticals/CRO industries , table programing is often started when only partial data is available and it is common that we need to summari ze data based on all possible combinations of values. However, if there is no data collected for all levels of these values in the data set, by default, existing SAS procedures are not able to display them in a summary table. A viable solution is to add th e PRELOADFMT option in these procedures. PROC FREQ is commonly used procedure to summarize data and calculate statistics, but the PRELOADFMT option is not supported. However using the existing SAS procedures (e.g. PROC FORMAT, PROC DATASETS , and PROC FREQ), we can create a SAS macro which can perform the above mentioned task easily without much programming work |
proc freq, proc step | source | 5 |
| 150 | Sorting big datasets. Do we really need it? | Daniil Shliakhov | Very often working with big data causes difficulties for SAS programmers. As we all know, large datasets can be manipulated and analyzed using SAS , but these SAS programs may take many hours to run. Often, timelines are short and delivery dates cannot be moved, so decreased running time is critical. One of the most time -consuming tasks for the programmer is sorting large datasets. This paper describes different techniques of quick sorting like using indexes or even how to avoid sorting at all by using hash -objects. The main goal of this paper is to find the best methods for sorting large datasets within SAS depending on the different types of data structure (for example, vertical or horizontal) and different number of variables. To identify the efficiency of different techniques of quick sorting, this paper also provides compari son between the sorting process with and without those techniques | proc step, index, proc sort, index creation, proc sql, cpu time, data step, dataset | source | 6 |
| 151 | Spelling Checker Utility in SAS using VBA Macro and SAS Functions | Ajay Gupta | In Pharmaceuticals/CRO industries , it is quite common to have typographical error during the data entry, data set programming, and table programming. This typographical error if not catch on time can add more programming/reviewer time and can affect the quality of deliverables. In order to find the misspelled words in SAS data set and tables, programmer normally review the data visually which can be tedious and prone to error. This paper will introduce a method to report all the misspelled word from table, listings, and SAS data set to a Word document in SAS using word basic commands via DDE (Dynamic Data Exchange) and SAS functions. If needed, this macro will be extended to find misspelled word from other file format for e.g. Microsoft EXCEL |
dataset, excel, macro call, macro definition, macro variable | source | 7 |
| 152 | Statistical Analyses Across Overlapping Time Intervals Based on Person-Years | John Reilly, John R. Gerlach |
Consider an ongoing observational study consisting of subjects who take a drug to treat a disease that causes serious health problems, such as renal failure, or even death. A scheduled analysis produces a report showing several items of interest (e.g. incidence rate) across overlapping time intervals that are based on person-years, that is, a subject's exposure to the therapy treatment. Consequently, a subject may contribute to multiple time intervals. Although a subject might have more than one event only the earliest event is used. Conversely, a subject might not have any events, yet contributes to the overall person-years for appropriate time intervals. This paper explains an intuitive method for augmenting the analysis data set so that the overlapping time intervals are represented, accordingly | proc freq, confidence interval, nominal variable, interval variable, data science, proc step | source | 10 |
| 153 | Statistical Review and Validation of Patient Narratives | Indrani Sarkar, Bradford J. Danner |
Patient narratives are often a required component to a safety review or a clinical summary report being submitted to a regulatory agency. Events that will often require a narrative are deaths, other serious adverse events, and significant adverse events determined to be of special interest because they are clinically relevant. The manner in which they may be reported can vary, but nearly always include records of a patient's demographics, medical history, drug administration, and adverse events over the course of a clinical study. Combining the various sources of data into one cohesive presentation can be challenging, and possibly more difficult or tedious, the validation and review of each individual profile produced. Considering all the various sources of data which need to be checked and cross- referenced, time and effort can become substantial | adverse events, data cleaning, medical history | source | 5 |
| 154 | Steps Required to Achieve Operational Excellence (OpEx) Within Clinical Programming | Opeyemi Ajoje | Lean, Six Sigma, Shingo, The Toyota Way and other methods under the umbrella of Operational Excellence (OpEx) have being traditionally applied to manufacturing operations. Other areas of company operations have implemented OpEx with great success: reduced cycle times, fewer quality issues and faster flow of information, as well as culture of continuous improvement. Why haven't we heard much about OpEx within Clinical Programming? Are the benefits that OpEx can deliver even of interest of Clinical Programming Operations, such as understand and exceed your customer expectations, improve quality, reduce errors, identify and drive out waste from processes, simplify your operations making them easier to manage, reduce cost, cycle-time and time-to-client etc. This paper will cover 5 basics steps required to achieve Operational Excellence in order to manage Clinical Programming department effectively | clinical programming, customer satisfaction, quality control | source | 8 |
| 155 | Subset without Upsets: Concepts and Techniques to Subset SDTM Data | Jhelum Naik, Sajeet Pavate |
For certain studies, the critical endpoints may occur at an interim visit rather than the end of the study OR the safety data may need to be monitored at periodic intervals. These trial designs dictate the requirement for subsetting of CDISC SDTM (Study Data Tabulation Model) data for an Interim analysis to generate CDISC ADaM (Analysis Data Model) which supports this analysis. We demonstrate via case studies and operational details that it is more efficient to subset the SDTM data vs. the raw data. We explain three approaches to subset the SDTM data: Hybrid, Visit and Calendar Date. The hybrid approach looks at a combination of Visit (unique subset date per subject) and a common "calendar" cut-off date (same date for all subjects) to subset domains. The Visit based approach hinges upon identification and use of a unique "subset" date per subject based on the subject's visit date to subset the data across all SDTM domains | macro variable, sdtm domain, clinical trial, raw data, data cleaning, cdisc | source | 6 |
| 156 | Summing up - SDTM Trial Summary Domain | Yi Liu, Jenny Erskine, Stephen Read |
Trial Design Model (TDM) datasets, specifically the Trial Summary Information (TS) domain, can provide a challenge for SAS programmers and SDTM reviewers based on the complexity of the study design and classification of study related characteristics as detailed in protocols, Statistical Analysis Plans (SAP), study related data or other supporting reference dictionaries and specifications. This paper gives a brief background and overview of key TS domain requirements and discusses some practical guidance in support of the TS domain build, its population and subsequent review. The paper also includes some recommendations around clearer definition of TS parameters in line with more recent SDTM and OpenCDISC validation enhancements and considerations around support of configurable data files that can be used to help drive the appropriate definition and documentation of TS data across a variety of protocols | trial summary, trial design model, controlled terminology, clinical trial, error message, excel, proc freq, cdisc | source | 9 |
| 157 | Tackling Clinical Lab Data in Medical Device Environment | Juan Wu, Min Lai |
Working with clinical laboratory data can be among the most challenging tasks for SAS programmers when creating analysis datasets (AD) and tables, figures, and listings (TFL). Lab results are usually the largest dataset among clinical data. There are many different tests, and the same lab test can have different lab units. Many multi-centered medical device clinical studies use local labs, which result in the complication of lab units. Therefore the number of conversion factors adds up quickly. In order to tackle the complicated lab data, we developed a lab data manipulation process, which sets up a central lab test library and a lab unit conversion library to help improve proficiency in programming for AD and for TFL. This paper will illustrate this process in detail. The sample lab test library and lab unit conversion library will be provided as well. We intend to reduce the complexity of coding and enable the trained clinical staff to maintain the lab test and lab unit libraries | sample, laboratory data, clinical trial | source | 7 |
| 158 | TEAE: Did I flag it right? | Arun Raj Vidhyadharan, Sunil Mohan Jairath |
As per ICH guidelines for statistical principles for clinical trials (E9) a treatment-emergent adverse event is defined as an event that emerges during treatment having been absent pre-treatment, or worsens relative to the pre-treatment state. However there are extensions to the definition of a TEAE that varies from study to study and that we need to remember while deriving this flag. In this paper, we examine the various factors that would contribute in defining a treatment-emergent adverse event | washout period, adverse events, trial elements | source | 5 |
| 159 | Team-work and Forensic Programming: Essential Foundations of Indestructible Projects | Brian P. Fairfield-Carter | Everyone probably agrees that project success hinges on teamwork and communication. The concept of teamwork often emphasizes leadership and organizational structure over individual responsibility, but the scale and complexity of analysis programming projects mean that effective teamwork demands individual autonomy and initiative and should ideally involve a cooperative effort among peers. And despite generally recognizing the importance of communication, we rarely see pragmatic suggestions on communication techniques. With autonomy comes responsibility: while 'exercising initiative' means that we do things as we recognize a need, we also have to try and anticipate the impact of our actions (choice of programming constructs & style, methods of program organization, etc.) on other team-members. We have to avoid 'cleverness' for its own sake, and instead focus on producing code that will be intelligible to anyone who has to maintain or adapt it | proc step, macro variable, adverse events, data cleaning, raw data, proc sql, proc freq, create table, proc compare, proc print, proc report, adam dataset, temporary dataset, randomization, data science, proc means, macro loop, cdisc | source | 14 |
| 160 | Techniques of Preparing Datasets for Visualizing Clinical Laboratory Data | Amos Shu, Victor Sun |
Visualizing clinical laboratory data helps clinicians and statisticians quickly understand the results of lab tests. Some people [1-4] have been able to easily generate figures for clinical laboratory data by using SAS Graph Template Language and SAS/GRAPH SG Procedures. The most difficult part of generating graphs, however, is not the SAS/GRAPH Language, but the process of creating the datasets that are used to generate the graphs. This paper discusses the techniques of preparing datasets that will be used to generate five types of figures for clinical laboratory data. These same techniques are applicable to visualizing electrocardiography and vital signs data as well |
graph template language, laboratory data, scatter plot, proc template, vital signs | source | 6 |
| 161 | The 5 Most Important Clinical SAS Programming Validation Steps | Brian C. Shilling | data cleaning, clinical trial, proc means, proc step, clinical data | source | 6 | |
| 162 | The Best Practices of CDISC ADaM Validation Checks: Past, Present, and Future | Shelley Dunn, Ed Lombardi |
The CDISC ADaM Validation Check v1.3 document was recently published in March 2015 (following the initial submission of this abstract), with the previous version last revised in 2012 (v1.2). The v1.2 checks include specific guidelines and rules for validation of ADaM data sets based on the ADaM Implementation Guide V1.0 released in 2008. Since this time, the ADaM Team has published "The ADaM Basic Data Structure for Time-to-Event Analysis" (BDS-TTE) and the "ADaM Data Structure for Adverse Event Analysis" (ADAE). As new ADaM documents are released the ADaM Compliance Sub-Team has been preparing machine-testable failure criteria to support new requirements. Additionally, as new versions of the ADaMIG or other analysis documents are prepared, e.g., Occurrence Data Structure and Data Structure for Integration, the checks will be updated to reflect the current decisions made by the ADaM Team | data cleaning, adam dataset, survival analysis, data validation rules, bds, adverse events, cdisc | source | 9 |
| 163 | The concept of "Dynamic" SAS programming | Sergey Sian | The situation of writing SAS code which generates SAS programs, and these generated programs are then run to produce output is not new. However, this is sometimes a necessary and certainly useful tool to use. The concept of "Dynamic" SAS programming will be discussed in this paper, along with why it is useful and how to do it. This will be augmented with an example of being a series of Adverse Event Tables. Along the way there will also be some discussion on the SAS options available to record what has been run and how it ran | dataset, macro variable, sas programming, adverse events | source | 4 |
| 164 | The Dependency Mapper: How to save time on changes post database lock | Apoorva Joshi, Shailendra Phadke |
We lay emphasis on building a perfect roadmap to database lock. To name a few, we keep all stake-holders in-sync, nail down the specs and simulate dry-runs pre-database lock. This helps us produce the final deliverable such as tables, listings, figures and data sets in a seamless fashion post database lock. In our race to create these deliverables in record time, we usually forget to account for one aspect - human error. Changes to any part of the deliverable post database lock can be frustrating and could potentially delay timelines. What could be the impact of a small change, such as correcting a label typo in ADLB to the impact of something more severe, such as a new derivation in ADSL? By creating a dependency map - an extensive map of data sources and their dependent programs - one can greatly reduce time consumed on changes post database lock | database lock, libname statement, sample, macro variable | source | 5 |
| 165 | The Disposition Table: Make it Easy | Endri Endri, Benedikt Trenggono |
The disposition table is one of the most complex tables in statistical programming, because it provides an overview of clinical data and events from numerous sources. Disposition tables include (but are not limited to): overviews of patients who completed the various study epochs, and the number of adverse events and serious adverse events related to study medication. Some disposition tables require the merging of several datasets, and there are often other complexities, such as the requirement to apply imputation rules, which must be taken into account. These complexities lead to an increased workload and more time spent on programming the table. This presentation explains the steps required to create a disposition table using SAS as a labor and time-saving tool not just to produce the table but to generate the table-creation code automatically based on the data specifications as well as the data itself | disposition table, clinical data, group by, clinical research, adverse events, artificial intelligence, proc step, data science, clinical database, proc tabulate, data cleaning, proc freq, proc sql | source | 10 |
| 166 | The Implementation of Display Auto-Generation with Analysis Results Metadata Driven Method | Chengxin Li | Standard data structures by CDISC should lead to standard programs and result in auto -generation of SDTM and ADAM data sets and tables, listings and figures. This paper provides a display auto -generation solution implemented with SAS macros. The solution is driven by analysis results metadata and illustrated with a survival analyses display. Together with display auto -generation, this paper also describes the methods handling dynamic footnoting and dynamic reporting | adam dataset, proc step, macro parameter, proc report, survival analysis, macro definition, data science, proc phreg, in=, clinical programming, sdtm domain, cdisc | source | 11 |
| 167 | The Knight's Tour in Chess - Implementing a Heuristic Solution | John R. Gerlach | The Knight's Tour is a sequence of moves on a chess board such that a knight visits each square only once. Using a heuristic method, it is possible to find a complete path, beginning from any arbitrary square on the board and landing on the remaining squares only once. However, the implementation poses challenging programming problems. For example, it is necessary to discern viable knight moves, which changes throughout the tour. Even worse, the heuristic approach does not guarantee a solution. This paper explains a SAS solution that finds a knight's tour beginning from every initial square on a chess board - Well, almost | macro variable, macro loop | source | 8 |
| 168 | The Most Common Issues in Submission Data | Sergiy Sirichenko, Max Kanevsky |
On December 17th, the FDA made its long-awaited announcement that future submissions will be required in standardized format. FDA published the technical requirements for standardized submission data in a new binding guidance and supporting documents including the Data Standards Catalog and Study Data Technical Conformance Guide. They also encouraged sponsors to communicate with the review divisions on study specific data questions. Even though the guidance is new, most sponsors have already migrated to standardized submissions with the level of compliance rising rapidly. This has enabled FDA to improve the efficiency of the review process by developing automated review and analysis tools, which have been operationalized by the FDA JumpStart service. This presentation will share our experience of the most common data quality issues we observed during JumpStart across many regulatory submissions | controlled terminology, data cleaning, data validation rules, adverse events, clinical trial, data governance, edc, regulatory submission, cdisc controlled terminology, cdisc | source | 9 |
| 169 | The Path To Treatment Pathways | Tracee Vinson-Sorrentino | Refills, switches, restarts, and continuation are valuable and necessary metrics when analyzing pharmaceutical treatment paths. Calculating duration of therapy is an important piece of getting to those data points and a business need for pharmaceutical clients. The nature of rx claims give us many overlapping incidents of therapy and those overlapping dates can skew the duration of therapy calculation, if the calculation is done incorrectly. This paper will show one very successful way of calculating duration of therapy. Additionally, as a prelude to that process, I will show you how to make SAS tell you what value you need for the arrays that will go into the step and force SAS to put that value right into the array code | macro variable, retain, by group processing | source | 6 |
| 170 | The REPORT Procedure: A Primer for the Compute Block | Jane Eslinger | It is well-known in the world of SAS programming that the REPORT procedure is one of the best procedures for creating dynamic reports. However, you might not realize that the compute block is where all of the action takes place! Its flexibility enables you to customize your output. This paper is a primer for using a compute block. With a compute block, you can easily change values in your output with the proper assignment statement and add text with the LINE statement. With the CALL DEFINE statement, you can adjust style attributes such as color and formatting. Through examples, you learn how to apply these techniques for use with any style of output. Understanding how to use the compute-block functionality empowers you to move from creating a simple report to creating one that is more complex and informative, yet still easy to use |
proc report, proc step, automatic variable, character variable, numeric variable, response variable, missing value | source | 23 |
| 171 | Things Are Not Always What They Look Like: PROC FORMAT in Action | Peter W. Eberhardt, Lucheng Shao |
When we first learn SAS, we quickly learn the value of built-in formats to convert our underlying data into visual representations fit for human Consumption. For many SAS programmers that is as far as their understanding of formats goes. In this paper we will show creating and using formats and informats created with PROC FORMAT. We will show how you can use these artifacts to do more than just change the appearance of a variable |
proc format, proc step, missing value, dataset, proc fcmp, proc print, clinical trial, date variable | source | 23 |
| 172 | Tips on Creating a Strategy for a CDISC Submission | Rajkumar Sharma | A submission to FDA for an NDA (New Drug Application) or a BLA (Biologics License Application) is very exciting as well as very critical for a company. Companies and programmer s who are dealing with submission for the first time are often confused on how to develop a strategic plan and how to do a successful filling. A clear strategy and proper planning is very critical for a timely submission. This paper will discuss on some basics about electronic submission and then it will provide guidance on how to plan things out for a successful filling. This paper will also discuss on what to look out for while working with an outside vendor for preparing electronic submission related deliverables | regulatory submission, adam dataset, sdtm domain, sample, cdisc | source | 5 |
| 173 | Toward Adoption of Agile Software Development in Clinical Trials | Troy Martin Hughes | Agile methodologies for software development, including the Scrum framework, have grown in use and popularity since the 2001 Manifesto for Agile Software Development. More than having obtained ubiquity, Agile demonstrably has defined software development in the 21st century with its core foci in collaboration, value-added software, and flexibility gained through incremental development and delivery. Although Agile principles can easily be extrapolated to other disciplines, Agile-related nomenclature, literature, application, and employment descriptions often remain focused on software development alone. In SAS data analytic development-which often typifies software development that occurs within the clinical trials/pharmaceutical industry-developers and other practitioners also build complex, enduring software and data infrastructure, but often for their own or their team's use, and usually with the intent of transforming data into knowledge and data-driven decisions | clinical trial, clinical data, macro definition, clinical research, clinical sas, data cleaning, pharmaceutical industry, statistical programmer, sas programming, sas programmer | source | 7 |
| 174 | Transitions in Depressive Symptoms After 10 Years of Follow-up Using PROC LTA | Seungyoung Hwang | PROC LTA is by far the most popular and powerful SAS procedure for latent transition analysis used throughout a wide variety of scientific disciplines. However, few have reported easy-to-understand explanation with the example SAS code on examining transitions in latent statuses. This paper provides an in-depth analysis, with some explanation of the SAS code, to examine transitions in latent statuses of depressive symptoms after 10 years of follow-up using PROC LTA. The author also examined whether clinical characteristics predicted membership in the different statuses and predicted transitions between latent statuses over time. Examples of using PROC LTA are drawn from the Baltimore Epidemiologic Catchment Area Study. This paper gently guides all SAS users- even those with limited in statistics or who have never used SAS-through a step- by-step approach to using SAS for latent transition analysis and interpret the results |
proc step, odds ratio, likelihood function | source | 7 |
| 175 | Two different use cases to obtain best responses using RECIST 1.1: SDTM and ADaM | Kevin Lee, Vikash Jain |
Each therapeutic area has its own unique data collection and analysis. Especially, Oncology has a unique way to collect and analyze the data and one of unique data points in oncology study is best response. The paper will be based on Solid Tumor and RECIST 1.1, and it will show use cases on how best response will be collected in SDTM domains and derived in ADaM datasets using RECIST 1.1 in solid tumor oncology study. The paper will provide the brief introduction of RECIST 1.1 such as legions type (i.e., target, non-target and new) and their selection criteria( e.g., size and number). The paper will provide the practical application on how tumor measurements for target and non-target lesions are collected in TR domain, how those measurement are assessed according to RECIST 1.1, and eventually how responses are represented in RS domain based on the assessment from tumor measurements | best response, tumor results, adam dataset, complete response, objective response rate, procedures, randomization, clinical trial, label statement, pd, standard deviation, cdisc | source | 17 |
| 176 | Understanding SE, TA, TE Domains | Jacques Lanoue | The FDA clearly request that the subject element table (SE) be part of the submission data. In order to derive the SE domain, the trial domains Trial element (TE), and Trial Arm (TA) also need to be defined and part of the data. This paper will discuss how the Trial domains TE, TA contributes to the derivation of the SE domain and will provide one interpretation of the derivations needed to achieve a compliant and useful SE domain | dose, data standard | source | 4 |
| 177 | Unpacking an Excel Cell: Dealing with Multi-Line Excel Cells in SAS | Lucheng Shao | In clinical trials it is very common that a variable for a subject could have multiple observations for any particular visit. If the data are entered into Microsoft EXCEL, this could end up with having multiple observations in one cell. When an EXCEL file with multiple lines in one cell is imported into SAS there can be problems because of unprintable (control) characters in the variables. This paper will show you examples of importing multiple line EXCEL cells and how to deal with them without the need to resort to cryptic macro code. This paper is intended for SAS users who are familiar with SAS BASE and want to learn more about how to create a new SAS function using the FCMP procedure |
excel, sas function, proc import, proc step, out=, sas output, clinical trial, proc fcmp | source | 10 |
| 178 | Update: Development of White Papers and Standard Scripts for Analysis and Programming | Nancy Brucken, Michael Carniello, Mary Nilsson, Hanming Tu |
A PhUSE Computational Science (CS) Working Group is creating white papers describing recommended analysis and reporting methods for frequently-collected types of data included in clinical trials and regulatory submissions. An online platform for sharing code has also been created, making these standards easy to implement. This paper provides an update as of April 2015 on the progress made in these efforts | phase ii, clinical trial | source | 4 |
| 179 | Usage of OpenCDISC Community Toolset 2.0 for Clinical Programmers | Sergiy Sirichenko, Michael DiGiantomasso, Travis Collopy |
All programmers have their own toolsets like a collection of macros, helpful applications, favorite books or websites. OpenCDISC Community is a free and easy to use toolset, which is useful for clinical programmers who work with CDISC standards. In this Hands-On Workshop (HOW) we'll provide an overview of installation, tuning, usage and automation of OpenCDISC Community applications including: Validator - ensure your data is CDISC compliant and FDA submission ready, Define.xml Generator - create metadata in standardized define.xml v2.0 format, Data Converter - generate EXCEL, CSV or Dataset-XML format from SAS XPT, and ClinicalTrials.gov Miner - find information across all existing clinical trials |
data cleaning, excel, data validation rules, clinical trial, controlled terminology, cdisc controlled terminology, clinical research, cdisc | source | 19 |
| 180 | Use of SAS Reports for External Vendor Data Reconciliation | Soujanya Konda | As the adoption of industry data standards grows, organizations must streamline process as to how to manage data effectively with quality often by using various techniques, The main objective of Data Management (DM) is to deliver a qualitative database to SAS Programming , Statistical Analysis teams in a timely manner in turn helps to generate bug-free reports. The ultimate challenge is managing the third party vendor data, which loads into the database, and our aim is to reconcile this Vendor data (Lab data, SAE Data) with the related data present in our database. To find out the optimized process in such a way that avoids lot of manual effort, the various challenges, efficient techniques are discussed further in this paper | clinical database, sample, laboratory data, clinical data, adverse events, clinical trial, proc freq | source | 12 |
| 181 | Using ANCOVA to Assess Regression to the Mean | Kathryn Schurr | Regression to the mean (RTM) is a statistical phenomenon in which results appear to be statistically significant, but, in fact, they are spurious. There are many documented occurrences of this effect throughout history where researchers have been led to erroneous conclusions. Generally, these conclusions are based on a statistically significant change having been observed in a population or sample, but the change is in whole or in part due to chance. By implementing SAS and PROC GLM, a user can conduct an Analysis of Covariance (ANCOVA) to determine whether or not RTM is present. This will help prevent the user from making a presumptuous and erroneous statement regarding an observed change within their study |
proc glm, proc step, proc genmod, sample, regression analysis, covariance | source | 9 |
| 182 | Using Arrays to Quickly Perform Fuzzy Merge Look-ups: Case Studies in Efficiency | Arthur L. Carpenter | Merging two data sets when a primary key is not available can be difficult. The MERGE statement cannot be used when BY values do not align, and data set expansion to force BY value alignment can be resource intensive. The use of DATA STEP arrays, as well as other techniques such as hash tables, can greatly simplify the code, reduce or eliminate the need to sort the data, and significantly improve performance. This paper walks through two different types of examples where these techniques were successfully employed. The advantages will be discussed as will the syntax and techniques that were applied. The discussion will allow the reader to further extrapolate to other applications |
hash table, conditional do loop, binary variable, do loop, set statement, key, length statement | source | 14 |
| 183 | Using INFILE and INPUT Statements to Introduce External Data into SAS | Andrew T. Kuligowski | SAS has numerous capabilities to store, analyze, report, and present data. However, those features are useless unless that data is stored in, or can be accessed by SAS. This presentation is designed to review the INFILE and INPUT statements. It has been set up as a series of examples, each building on the other, rather than a mere recitation of the options as documented in the manual. These examples will include various data sources, including DATALINES, sequential files, and CSV files |
input statement, infile statement, excel, pointer control, proc print, proc step, length statement, filename statement, list input, variable, character variable, missing value, proc format, run, out=, numeric variable | source | 18 |
| 184 | Using Meta-data to Identify Unused Variables on Input Data Sets | Keith Hibbetts | Meta-data is a very powerful tool in the creation of clinical trial data. It's commonly used to define data standards, and can also be used to increase the level of automation and efficiency in data transformation. This paper will explore an additional benefit to using meta-data in data transformation: it can be used to programmatically identify any variables in the input datasets that weren't utilized. Identifying these unused variables provides a valuable quality check to help ensure that no important data is being lost in the data transformation | macro variable, data transformation, out=, excel, libname statement, clinical trial | source | 4 |
| 185 | Using SAS Clinical Data Integration to Roundtrip a Complete Study Study Metadata (Define-XML) and Study Data (Dataset-XML) | Ken Ellis | SAS Clinical Data Integration 2.6 now supports the complete CDISC Define-XML 2.0 specification for both import from, and creation of define.xml files. Support for value-level metadata and supplemental documents, as well as support for the new CDISC Dataset-XML specification have been added and give the user a powerful means by which to import and create complete study definitions. Topics covered include: import of CDISC Define-XML file metadata, including domains, value-level metadata, supplemental documents, computational algorithms and code lists import of accompanying domain data from CDISC Dataset-XML files creation of a complete CDISC Define-XML file including all imported metadata (roundtrip) creation of CDISC Dataset-XML files from the imported domain tables (roundtrip) | dataset, sas library, data cleaning, data standard, sdtm domain, cdisc | source | 19 |
| 186 | Using SAS to Analyze the Impact of the Affordable Care Act | John J. Cohen, Meenal (Mona) Sinha |
The Affordable Care Act that is being implemented now is expected to fundamentally reshape the health care industry. All current participants --providers, subscribers, and payers --will operate differently under a new set of key performance indicators (KPIs). This paper uses public data and SAS software to illustrate an approach to creating a baseline for the health care industry today so that structural changes can be measured in the future to establish the impact of the new laws | sample, data visualization, dataset, proc freq, proc step | source | 12 |
| 187 | Using the power of new SGPLOT features in SAS 9.4 - Customized graphic programming made easier for clinical efficacy and exposure-response analyses | Peter Lu, Xingji Han, Hong Yan |
Generating customized statistical graphs for clinical efficacy and exposure-response analyses is essential in clinical study reports but this often requires advanced SAS graphic programming skills and is time-consuming. This paper explores several new features in SGPLOT, implemented in SAS 9.4 (TS1M2), which allow us to generate customized graphs without writing lengthy code, complex macros, or having to customize the graphic template. Examples are given to demonstrate how to align an axis text-table for a Kaplan-Meier (K-M) curve, insert customized legends, overlay graphs, add unicode symbols and jitter data points without manipulating data. In the first example, two statements, XAXISTABLE and TEXT in SGPLOT, are used to align an axis text-table (e.g., number of patients at risk) and add customized legends to a K-M curve (e.g., median time-to-event, hazard ratio, time-point event-free rate estimates etc.) |
scatter plot, proc step, proc sgplot, box plot | source | 7 |
| 188 | Utilizing SAS for Cross-Report Verification in a Clinical Trials Setting | Daniel Szydlo, Iraj Mohebalian, Marla J. Husnik |
Large scale efficacy clinical trials require frequent and diligent monitoring of study data that includes the generation of Data Safety Monitoring Board (DSMB) reports. The importance of data accuracy, frequency of generation, and sheer length of DSMB reports combine to make their verification crucial and time-consuming. In an effort to improve the accuracy and efficiency of DSMB report production we developed procedures utilizing SAS to automate a number of verification checks. This paper presents the framework and the SAS tools we developed for verifying DSMB reports for a phase III efficacy trial that are generalizable to other research reports | title statement, clinical trial, macro variable, excel, phase iii, demographics table, proc step, proc report, sample | source | 12 |
| 189 | Variable-Width Plot - SAS GTL Implementation | Songtao Jiang | If you do statistical analyses using S-PLUS, you may be familiar with BLiP graphical tool. The variable-width plot (VWP) included in this tool was developed to graphically present the one-dimension data. A unique feature is its capability of drawing the distribution plot with variable width proportional to the density at particular locations. Without certain limitations of some commonly used graphical methods, such as scatter plot, histogram, or boxplot, the VWP is a very useful tool for studying the data distributions. While the variable-width plot in the BLiP tool has been implemented in the S-PLUS, this type of plot is not available in SAS. In this paper, we implement VMP using SAS GTL. The properties and benefits are discussed by comparing it to other existing graphical methods | sample, histogram, density plot, box plot, data science | source | 6 |
| 190 | What is the "ADAM OTHER" Class of Datasets, and When Should it be Used? | John K. Troxell | adam dataset, concomitant medications, cdisc | source | 5 | |
| 191 | What to Expect in SDTMIG v3.3 | Fred Wood | The next version of the SDTMIG (version 3.3) is expected in Q3 of this year. The content has been posted for review in three batches. The rational for this posting process for versions of the SDTMIG and the SDTM will be described. A number of new domains, variables, and concepts that will be included in SDTMIG v3.3 will be discussed. Included are the physiology-based Findings domains, (Nervous System Findings (NV), Ophthalmic Examinations (OE), Respiratory Measurements (RE), and Cardiovascular Findings (CV); and the new Interventions domains, Procedure Agents (AG) and Meals (ML). Functional Tests (FT) and Clinical Classifications (CC) are two new Findings domains that will be managed in the same way the Questionnaires (QS) domain is, with the Category variable indicating the type of measurements or tests. The definitions of the Tumor domains (TU, TR) have been expanded to include non- tumor lesions. The paper will present an overview of several new concepts | concomitant medications, controlled terminology, cdisc | source | 10 |
| 192 | What's Hot, What's Not - Skills for SAS Professionals | Kirk Paul Lafler, Charles E. Shipp |
As a new generation of SAS user emerges, current and prior generations of users have an extensive array of procedures, programming tools, approaches and techniques to choose from. This presentation identifies and explores the areas that are hot and not-so-hot in the world of the professional SAS user. Topics include Enterprise Guide, PROC SQL, PROC REPORT, PROC FORMAT, Macro Language, ODS, DATA STEP programming techniques such as arrays and hashing, business intelligence, sasCommunity.org, JMP, SAS/GRAPH, SAS/STAT, and SAS/AF |
sas 9, sas base, proc step | source | 6 |
| 193 | When Reliable Programs Fail: Designing for Timely, Efficient, Push-Button Recovery | Troy Martin Hughes | Software quality comprises a combination of both functional and performance requirements that together specify not only what software should accomplish, but also how well it should accomplish it. Recoverability-a common performance requirement-represents the timeliness and efficiency with which software or a system can resume functioning following a catastrophic failure. Thus, requirements for high availability software often specify the recovery time objective (RTO), or the maximum amount of time that software may be down following an unplanned failure or a planned outage. While systems demanding high or near perfect availability will require redundant hardware, network, and additional infrastructure, software too must facilitate rapid recovery. And, in environments in which system or hardware redundancy is infeasible, recoverability only can be improved through effective software development practices | data validation rules, macro variable, quality control, sas programmer, automatic macro variable, macro function | source | 12 |
| 194 | Where are the SAS Jobs? | Beth Ward, Chelsea Jackson |
Who is hiring? The hiring trends have shifted in the past several years for Pharmaceutical, Biotechnology and Clinical Research Organizations. Functional Service Provider models have grown throughout the years and are showing strong results. This paper outlines the different job options for a SAS professional. They will be enlightened on trends happening in the industry and why employers outsource their work. The information provided will give insight and challenge the professional to navigate towards aligning themselves with these potential companies | clinical research, clinical trial | source | 3 |
| 195 | Which TLFs Have Changed Since Your Previous Delivery? Get a Quick YES or NO for Each TLF | Tom Santopoli | Ever need to make a delivery where only some of the TLFs are expected to have changed since the previous delivery? This paper presents a method to obtain a quick YES or NO for each TLF to indicate which TLFs have and have not changed since the previous delivery. Prior to investigating specific changes between TLFs, such as differences in lines and cells, a quick YES or NO for each TLF is a very useful overview to ensure that only the appropriate TLFs have been impacted by any updates. A quick YES or NO can be obtained even for Figures. A couple quick tips to obtain the results of PROC COMPARE and to use CALL EXECUTE for data-driven macro calls are presented as the primary coding techniques |
proc compare, proc step, call execute, macro quoting function, macro call, macro variable | source | 7 |
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