There s No Such Thing as Normal Clinical Trials Data, or Is There? Daphne Ewing, Octagon Research Solutions, Inc., Wayne, PA

Size: px
Start display at page:

Download "There s No Such Thing as Normal Clinical Trials Data, or Is There? Daphne Ewing, Octagon Research Solutions, Inc., Wayne, PA"

Transcription

1 Paper HW04 There s No Such Thing as Normal Clinical Trials Data, or Is There? Daphne Ewing, Octagon Research Solutions, Inc., Wayne, PA ABSTRACT Clinical Trials data comes in all shapes and sizes depending upon the therapeutic area, indication and phase of the trial. Quite a bit of the data arriving on Case Report Forms (CRFs) is fairly standard (e.g. Demography, Adverse Events, Medications, Laboratory Results, etc.), and hence can be stored in fairly standard data structures. Designing clinical data structures for data entry is important, but it should be done with some understanding of the analysis that will be performed. Once an appropriate clinical data structure is arrived at for data entry, it is important to then determine how to best use the data in the analysis environment. This paper will discuss data normalization and what it means along with the effects it has on SAS programs used to list and summarize clinical trials data. Side by side examples of programs and output from standard data structures versus normalized data structures will provide proof of the importance of normalization. The CDISC SDTM model supports normalization, although this paper does not refer to those standards, the concepts are incorporated. NORMALIZATION The term normalization can mean different things in different environments. It is used within this paper to describe a data structure, which describes one element of data per observation within a data set. This means that there may be one or more context variables describing where the data belongs (e.g. GROUP, PATNUM, VISIT, etc.), along with one or more variables describing specific data points (e.g. VAR, VAL, VALC, VALN, FLAG, etc.). Another term used when referring to a normalized data structure is a vertical data structure. This implies the data exists in a long fashion with many observations, fewer variables. Variable Type Length Label GROUP CHAR 1 TREATMENT GROUP PATNUM CHAR 12 PATIENT NUMBER VISIT NUM 8 VISIT DTCOLL NUM 8 DATE SAMPLE COLLECTED TMCOLL NUM 8 TIME SAMPLE COLLECTED LABCODE NUM 8 LAB TEST CODE LABVALC CHAR 20 CHARACTER LAB VALUE LABVALN NUM 8 NUMERIC LAB VALUE LABVAL CHAR 20 DISPLAY VALUE Sample Normalized Structure The denormalized file structure may be more typical, where the context variables still exist and there is usually only one record per set of context variable values. In a denormalized data set, there is a variable for each data point (e.g. AGE, SEX, RACE, etc.). This file structure is also called a horizontal data structure, where the data set is wide with more variables and fewer observations. Variable Type Length Label GROUP CHAR 1 TREATMENT GROUP PATNUM CHAR 12 PATIENT NUMBER VISIT NUM 8 VISIT DTCOLL NUM 8 DATE SAMPLE COLLECTED TMCOLL NUM 8 TIME SAMPLE COLLECTED HGB NUM 8 HEMOGLOBIN RESULTS HCT NUM 8 HEMATOCRIT RESULTS RBC NUM 8 RED BLOOD CELLS RESULTS WBC NUM 8 WHITE BLOOD CELLS RESULTS Sample Denormalized Structure Laboratory data is typically prepared in a vertical or normalized fashion due to the nature of the data. However, other data sets can be created in this fashion as well, including demography, vital signs, physical exam, etc. Each data type being collected, lends itself to one or the other of these data structures and the question is, can you or should you stick to one structure or the other? 1

2 DATA LISTINGS The horizontal data structure (HDEMO) is very easily listed using either PROC REPORT or DATA _NULL_. The context variables are displayed on the left of the report (GROUP and PATNUM), while the specific data points are displayed to the right (AGE, SEX, RACE, WGT and HGT). The code in Example-1 below shows how simple it is to produce a data listing when the data are denormalized. The output of this PROC REPORT code can be found in Output-1. title1 'Normalized Data Paper'; title2 'Sample Horizontal Demography Listing'; proc report nowd data = hdemo center missing headline headskip; columns group patnum age sex race hgt wgt; define group / order width=15 format=$trt. 'Treatment Group'; define patnum / order width=10 'Patient Number'; define age / display width=15 format=4.0 'Age (yrs)' center; define sex / display width=15 format=$sexs. 'Sex'; define race / display width=15 format=$races. 'Race'; define hgt / display width=15 format=5.2 'Height (in)'; define wgt / display width=15 format=5.2 'Weight (kg)'; break after group /skip; title2; Example-1 If the data are normalized, there are a few more steps to take, but these could easily be placed in macros (not described here). There are a number of ways to achieve similar results, below is just one option. Example-2 uses the VAR variable in the normalized data set along with a format associated with each of the values (e.g. VARCODE), macro variables can be created which can be used to label the columns in the output. proc format; value varcode 1 = 'Age (yrs)' 2 = 'Sex' 3 = 'Race' 4 = 'Height (in)' 5 = 'Weight (kg)'; proc sort data = vdemo(keep=var) out=lbl nodupkey; by var; data _null_; set lbl; length lbl $20; lbl = put(var,varcode.); select(var); when(1) call symput('lbl1',lbl); when(2) call symput('lbl2',lbl); when(3) call symput('lbl3',lbl); when(4) call symput('lbl4',lbl); when(5) call symput('lbl5',lbl); otherwise ; Example-2 Using the TRANSPOSE Procedure along with PROC REPORT, the vertical data can easily be listed in a similar fashion to the report used using the horizontal data as shown in Example-3 below and displayed in Output-2. 2

3 proc transpose data = vdemo out=demo prefix=col; by patnum group; var val; options pageno=1; title2 'Sample Vertical Demography Listing'; proc report nowd data = demo center missing headline headskip; columns group patnum col1 col2 col3 col4 col5; define group / group width=15 format=$trt. 'Treatment Group'; define patnum / group width=10 'Patient Number'; define col1 / display width=15 "&lbl1"; define col2 / display width=15 "&lbl2"; define col3 / display width=15 "&lbl3"; define col4 / display width=15 "&lbl4"; define col5 / display width=15 "&lbl5"; break after group /skip; Example-3 The vertical data structure can be more easily reported using the ACROSS variable definition within PROC REPORT. Using the normalized laboratory data, the reporting code found in Example-4 is used to generate the output found in Output-3. data vdata; merge db.vchem db.vheme; by patnum visit dtcoll tmcoll labcode; /* only four lab tests for testing purposes */ if (labcode in (100,101,300,301)); /* remove lab values which are character */ if (labvalc ne ' ') then delete; /* Prepare Summary from VERTICAL data */ data vdata; merge vdata(in=inlab) db.treatmnt(in=intrt); by patnum; if inlab and intrt; options pageno=1; title2 'Sample Vertical Laboratory Listing'; proc report nowd data = vdata center missing headline headskip split='*'; columns group patnum visit labcode, labval labvaln; define group / group width=15 format=$trt. 'Treatment Group'; define patnum / group width=10 'Patient Number'; define visit / group width=10 format=visit. 'Visit' order=internal left; define labcode/ across width=15 '-Laboratory Test-'; define labval / display width=15 'Result'; define labvaln/ analysis noprint; break after group /skip; title2; Example-4 The above program only includes four lab parameters (which fit nicely on the page). In the event you are displaying more than four to five lab parameters a macro can be generated where you tell the program which lab parameters to display. In the code in Example-4, note the LABVALN variable is used as an ANALYSIS NOPRINT variable. This is a little trick to allow PROC 3

4 REPORT to process the ACROSS DISPLAY variables. Note when you use the ACROSS variables, the context variables must be GROUP variables, not just ORDER variables. When preparing data listings, a horizontal data structure is simple and straightforward. However, when your job is such that you deal with different studies, with slightly different CRFs and possibly different data points, a vertical structure lends itself to using macros, macro variables and pre-defined programs. The data expected and listed in Example-1 and Example-3 included AGE, SEX, RACE, WEIGHT and HEIGHT. If the next study contains exactly the same number of variables (5) but they are different (e.g. DOB, AGE, WEIGHT, SMKHIST, ALCHIST), and the data were denormalized, the PROC REPORT code would have to change to accommodate the new variable names and data points. The key advantage to listing the data from a normalized structure is that the program can be written in such a way that it does NOT have to know what the data points are, it simply finds the unique data elements and displays them. The PROC REPORT code along with the labeling and transposition code preceding it would NOT change at all for a new study with the same number of variables. In the event that the number of variables changes, the PROC REPORT code for both data structures would have to be modified slightly, so the difference would be less apparent. However, if your standard program code was designed in such a way that the PROC REPORT code was written based on the number of transposed variables created, then you would NOT have to change the code for the normalized data structure, where you would always have to change the code when listing a different number of variables in a horizontal data structure. Another note of caution in regards to using the normalized data structure; when using a format statement to decode a variable and then placing this into a macro variable as shown in Example-2, be sure that the WIDTH length is long enough to handle the length of the labels you are creating. DATA SUMMARIES Data summarization and analysis is performed based on the study design. There are many methods for performing clinical analysis and the programmer or statistician is responsible for selecting the most appropriate method. Looking exclusively at the data summarization methodologies, specifically in regards to using vertical or horizontal data structures, there are methods to choose which make the vertical data structure more robust. Beginning with the horizontal data structure, let s assume we are dealing with the demography data again. This data represents both numeric and character data which is summarized using two different SAS procedures, namely PROC MEANS and PROC FREQ respectively. Again, this is a choice, as PROC SUMMARY would summarize the numeric data just as well. The code found in Example-5 shows the PROC FREQ code to summarize the character data found in the horizontal demography (HDEMO) data set. The code also demonstrates one method for counting totals (regardless of treatment group) by outputting an additional record for each record found with a total treatment group (e.g. Z in this example). 4

5 data hdemo; merge db.hdemo(rename=(sex=sexc race=racec)) db.treatmnt; by patnum; length sex $10 race $15; /* reset Sex and Race to text */ sex = put(sexc,$sexs.); if (race eq 'O') then race = otspec; else race = put(racec,$races.); /* Add total treatment group */ data hdemo; set hdemo; output; group = 'Z'; output; proc sort data = hdemo; by group patnum; /* Counts for character data */ proc freq data = hdemo noprint; by group; tables sex/out=sum_s; tables race/out=sum_r; Example-5 Notice the FREQ procedure produces an output data set for each TABLES statement. You can not produce one output file with the counts for all character variables. The next step would be to gather the descriptive statistics for the numeric data (N, MEAN, STD, MIN, MAX). Using the MEANS procedure, the code would be as described in Example-6. proc means data = hdemo noprint; by group; var age wgt hgt; output out=sum_n; Example-6 With a bit of manipulation, you can get the data from the output of both of these procedures into one data structure ready for display. This would include one record per parameter (Age, Sex, Race, Height, Weight) per classification (Male/Female, etc.) per statistic (N, MEAN, etc.). With the data in a standard format such as that shown in the Sample Reporting Structure below, the PROC REPORT code becomes fairly standard. Variable Type Length Label SRT1 NUM 8 SORTING FOR CAT1 CAT1 CHAR 20 DESCRIPTION 1 SRT2 NUM 8 SORTING FOR CAT2 CAT2 CHAR 20 DESCRIPTION 2 SRT3 NUM 8 SORTING FOR CAT3 CAT3 CHAR 8 DESCRIPTION 3 SRT4 NUM 8 SORTING FOR CAT4 CAT4 CHAR 8 DESCRIPITION 4 A_VAL CHAR 20 VALUE FOR GROUP A B_VAL CHAR 20 VALUE FOR GROUP B Z_VAL CHAR 20 VALUE FOR TOTAL Sample Reporting Structure The above structure is generic in that there are four sorting variables (SRT1-SRT4) and four description variables (CAT1- CAT4). Regardless of whether these are used or not used, they are included such that the reporting code can become fairly simple, as shown in Example-7 and the results displayed in Output-4. 5

6 proc sort data = h_rep; by srt1-srt4 cat1-cat4 group; title2 'Sample Demography Summary from Denormalized Data'; proc report nowd data = h_rep missing headline headskip split='*'; columns srt1 cat1 srt2 cat2 srt3 cat3 srt4 cat4 ("-Treatment Group-" a_val b_val z_val); define srt1 / order order=internal noprint; define cat1 / order width=15 ""; define srt2 / order order=internal noprint; define cat2 / order width=1 " "; define srt3 / order order=internal noprint; define cat3 / order width=15 " "; define srt4 / order order=internal noprint; define cat4 / order width=10 "Statistic"; define a_val / display width=15 "Active" spacing=10; define b_val / display width=15 "Placebo"; define z_val / display width=15 "Total"; break after cat1 /skip; Example-7 The normalized data structure is designed in such a way that the MEANS procedure will calculate the number of occurrences for character data as well. The data structure as shown above as Sample Normalized Structure has three value fields. There is a numeric value field, a character value field and a display value field. When listing the data from a normalized data set, it is helpful to have a field prepared with formatted output specifically for that data type (e.g. LABVAL). The display variable is created from either the numeric or character lab value, whichever it finds or whichever is appropriate for that test/study. For all variables with categories, the actual category will reside in the LABVALC and the LABNVAL will be given a value of 1 (indicating one person has this value), while the LABVAL will simply be a copy of the LABVALC value for display purposes. For numeric data, the LABVALC field is left blank. The LABVAL field will contain the formatted LABVALN to the appropriate decimal place precision based on the data. With this structure, the summary statistics can be prepared for character and numeric data from the same PROC MEANS statement as shown in Example-8. The MEANS procedure is run a second time which counts the number of subjects in each treatment group for each lab code at each visit. The second MEANS statement uses the output from the first one picking up the N statistic and summing it over all observations for that by group. This code may need to be modified slightly for each study/client based on the rules for calculating denominators. proc sort data = vdata; by group labcode visit labvalc patnum; proc means data = vdata noprint; by group labcode visit labvalc; var labvaln; output out=sum_v; /* get totals per variable for percentages */ proc means data = sum_v(where=(_stat_ eq 'N')) noprint; by group labcode visit; var labvaln; output out=sum_t sum=tot; Example-8 Even with normalized data, the results from the MEANS procedure are best transposed into a format that is more easily reported (as in the Sample Reporting Structure). The code necessary to create sorting variables and description variables is shown in Example-9 pulling together the output from both of the MEANS procedures first. The data are then sorted by these newly created variables (SRT1-SRT4 and CAT1-CAT4) and the GROUP variable in order to transpose the data one more time to create values per treatment group. We consider the Total as a different treatment group, when actually this data came from the individual treatment groups. 6

7 The resulting data structure is identical to that found in Sample Reporting Structure and ready for the PROC REPORT code found in Example-7. The SRT2 and CAT2 variables are not used in this example with lab data, but if the summarization was slightly different, this layout would allow some flexibility with only minor changes to the PROC REPORT code that creates the summary. data v_rep(keep=group srt1-srt4 cat1-cat4 value); merge sum_v(drop=_type FREQ_ rename=(_stat_=cat4)) sum_t(keep=group labcode visit tot); by group labcode visit; length cat1-cat3 $20 value $15; retain srt3 srt4 0; cat1 = put(labcode,labcods.); srt1 = labcode; cat2 = ' '; srt2 =.; cat3 = put(visit,visit.); srt3 = visit; select(cat4); when('n') do; srt4 = 1; if (cat3 ne ' ') then value = put(labvaln,4.0) ' (' put(round(((labvaln/tot)*100),.1),5.1) '%)'; else value = put(labvaln,4.0); when('mean') do; srt4 = 2; value = put(labvaln,7.2); when('std') do; srt4 = 3; value = put(labvaln,7.2); when('min') do; srt4 = 4; value = put(labvaln,6.1); when('max') do; srt4 = 5; value = put(labvaln,6.1); otherwise put 'CAT4: ' cat4=; proc sort data = v_rep; by srt1-srt4 cat1-cat4 group; data t_rep(drop=value); set v_rep; by srt1-srt4 cat1-cat4 group; length a_val b_val z_val $15; retain a_val b_val z_val; select(group); when('a') a_val = value; when('b') b_val = value; when('z') z_val = value; otherwise /* do nothing */ ; if last.cat4 then do; output; a_val = ' '; b_val = ' '; z_val = ' '; Example-9 7

8 The results of the report code (from Example-7) with the data prepared in Example-9 are shown in Output-5. FLEXIBILITY With the normalized data structure, quite a bit of the code from one program can be reused for many other programs. This advantage lends itself to macro programs to be written using macro parameters to pass in the changing data items. The laboratory summary program described above is quite similar to summarizing the demography data when using a normalized data structure. Shown below in Example-10 is the code necessary to summarize the normalized demography data (VDEMO). proc sort data = vdemo; by group var valc patnum; proc means data = vdemo noprint; by group var valc; var valn; output out=sum_v; data sum_v; set sum_v(drop=_type FREQ_); by group var; /* remove extra stats */ if (valc ne ' ') and (_STAT_ ne 'N') then delete; /* get totals per variable for percentages */ proc means data = sum_v(where=(_stat_ eq 'N')) noprint; by group var; var valn; output out=sum_t sum=tot; Example-10 In the above code, the data are summarized in a similar fashion with slightly different variable names. We could have easily renamed the lab variables to be consistent with these variable names. The output data files from the summarization steps are identical to those created in Example-8 above. The code necessary to transpose this data into the Sample Reporting Structure is very similar to the code in Example-9, but is shown below in Example-11. The resulting output found in Output- 6 is identical to that of Output-4 for demography data. The difference here is that VERY similar code between data types was used to prepare the output making new programs more easily written. 8

9 data v_rep(keep=group srt1-srt4 cat1-cat4 value); merge sum_v(rename=(valc=cat3 _STAT_=cat4)) sum_t(keep=group var tot); by group var; length cat1-cat2 $20 value $15; retain srt2 srt3 0; cat1 = put(var,varcode.); srt1 = var; if first.var then srt4 = 1; else srt4 + 1; select(cat4); when('n') do; srt4 = 1; if (cat3 ne ' ') then value = put(valn,4.0) ' (' put(round(((valn/tot)*100),.1),5.1) %)'; else value = put(valn,4.0); when('mean') do; srt4 = 2; value = put(valn,7.2); when('std') do; srt4 = 3; value = put(valn,7.2); when('min') do; srt4 = 4; value = put(valn,6.1); when('max') do; srt4 = 5; value = put(valn,6.1); otherwise put 'CAT4: ' cat4=; Example-11 Now you have seen different types of data in normalized structures summarized in a fairly consistent fashion. The other key advantage to this data structure is the flexibility encapsulated when more or different data arrives. For example, say the lab tests for a new study are entirely different. It does NOT make any difference to the program if there are 4 unique lab variables or 40. Not to mention the fact that if you use the same variable decodes across studies (e.g. LABCODE decodes using LABCODS. format or VAR decodes using VARCODE.) within the identical normalized structure, then the program does not have to change from study to study or client to client. This supports the concept of moving your summarization routine into macros and calling them with parameters passing in the unique to this study information. CONCLUSION Given the option of a horizontal versus a vertical data structure to be used during the analysis phase of clinical trials, there are many reasons to choose the vertical structure. If your company has not gone to standards at this point, it might be worth looking into a normalized data structure as your standard. This design provides for flexibility and makes standard programs more robust. The earlier on in the data process where the data can be normalized, the analysis process benefits are greater. REFERENCES SAS Guide to the Report Procedure, Reference, Release 6.11 SAS Procedures Guide, Version 6, Third Edition 9

10 ACKNOWLEDGMENTS I would like to thank my old department at IBAH, Inc. who showed me many ways to handle difficult data. I would also like to thank my colleagues at Synteract, Inc. for the successful implementation (and documentation) of normalized structures in their programming efforts. CONTACT INFORMATION Your comments and questions are valued and encouraged. Contact the author at: Daphne Ewing, Octagon Research Solutions, Inc. Voice: (610) x598 FAX: (610) EMS: dewing@octagonresearch.com SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. indicates USA registration. Other brand and product names are trademarks of their respective companies. 10

11 Normalized Data Paper 09:34 Wednesday, March 18, Sample Horizontal Demography Listing Patient Treatment Group Number Age (yrs) Sex Race Height (in) Weight (kg) Active A Male Caucasian A Male Black A Female Caucasian A Male Caucasian A Male Caucasian A Male Caucasian A Male Caucasian A Male Caucasian A Male Caucasian Placebo A Male Caucasian Output-1 Normalized Data Paper 09:34 Wednesday, March 18, Sample Vertical Demography Listing Patient Age (yrs) Sex Race Height (in) Weight (kg) Treatment Group Number Active A Male Caucasian A Male Black A Female Caucasian A Male Caucasian A Male Caucasian A Male Caucasian A Male Caucasian A Male Caucasian A Male Caucasian Placebo A Male Caucasian Output-2 11

12 Normalized Data Paper 13:06 Wednesday, March 18, Sample Vertical Laboratory Listing Laboratory Test Patient ALT/SGPT AST/SGOT Hematocrit Hemoglobin Treatment Group Number Visit Result Result Result Result Active A-001 Screening Baseline Follow-up A-002 Screening Baseline Follow-up A-005 Screening Baseline Follow-up A-011 Screening Baseline Follow-up A-013 Screening Baseline Follow-up A-015 Screening Baseline Follow-up A-021 Screening Baseline Follow-up A-023 Screening Baseline Follow-up A-025 Screening Baseline Follow-up Placebo A-003 Screening Baseline Follow-up Output-3 12

13 Normalized Data Paper 09:34 Wednesday, March 18, Sample Demography Summary from Denormalized Data Treatment Group Statistic Active Placebo Total Age (yrs) N MEAN STD MIN MAX Sex Female N 1 ( 11.1%) 1 ( 11.1%) 2 ( 11.1%) Male N 8 ( 88.9%) 8 ( 88.9%) 16 ( 88.9%) Race Black N 1 ( 11.1%) 1 ( 11.1%) 2 ( 11.1%) Caucasian N 8 ( 88.9%) 8 ( 88.9%) 16 ( 88.9%) Height (in) N MEAN STD MIN MAX Output-4 Normalized Data Paper 09:34 Wednesday, March 18, Sample Laboratory Summary from Normalized Data Treatment Group Lab Test Visit Statistic Active Placebo Total Hemoglobin Screening N 9 (100.0%) 9 (100.0%) 18 (100.0%) MEAN STD MIN MAX Baseline N 9 (100.0%) 9 (100.0%) 18 (100.0%) MEAN STD MIN MAX Output-5 13

14 Normalized Data Paper 09:34 Wednesday, March 18, Sample Demography Summary from Normalized Data Treatment Group Statistic Active Placebo Total Age (yrs) N MEAN STD MIN MAX Sex Female N 1 ( 11.1%) 1 ( 11.1%) 2 ( 11.1%) Male N 8 ( 88.9%) 8 ( 88.9%) 16 ( 88.9%) Race Black N 1 ( 11.1%) 1 ( 11.1%) 2 ( 11.1%) Caucasian N 8 ( 88.9%) 8 ( 88.9%) 16 ( 88.9%) Height (in) N MEAN STD MIN MAX Weight (kg) N MEAN STD MIN MAX Output-6 14

PROC REPORT AN INTRODUCTION

PROC REPORT AN INTRODUCTION Table Generation Using the PROC REPORT Feature Edward R. Smith, Senior Scientific Programmer Covance Periapproval Services Inc, Radnor, PA ABSTRACT The PROC REPORT procedure is a powerful report generation

More information

Using PROC SQL to Generate Shift Tables More Efficiently

Using PROC SQL to Generate Shift Tables More Efficiently ABSTRACT SESUG Paper 218-2018 Using PROC SQL to Generate Shift Tables More Efficiently Jenna Cody, IQVIA Shift tables display the change in the frequency of subjects across specified categories from baseline

More information

Mapping Clinical Data to a Standard Structure: A Table Driven Approach

Mapping Clinical Data to a Standard Structure: A Table Driven Approach ABSTRACT Paper AD15 Mapping Clinical Data to a Standard Structure: A Table Driven Approach Nancy Brucken, i3 Statprobe, Ann Arbor, MI Paul Slagle, i3 Statprobe, Ann Arbor, MI Clinical Research Organizations

More information

Macros: Data Listings With Power. Daphne Ewing, Synteract, Inc., Ambler, PA

Macros: Data Listings With Power. Daphne Ewing, Synteract, Inc., Ambler, PA Paper 185-27 Macros: Data Listings With Power Daphne Ewing, Synteract, Inc., Ambler, PA ABSTRACT Displaying a variety of data in a consistent manner can be tedious and frustrating. Making adjustments to

More information

A Practical and Efficient Approach in Generating AE (Adverse Events) Tables within a Clinical Study Environment

A Practical and Efficient Approach in Generating AE (Adverse Events) Tables within a Clinical Study Environment A Practical and Efficient Approach in Generating AE (Adverse Events) Tables within a Clinical Study Environment Abstract Jiannan Hu Vertex Pharmaceuticals, Inc. When a clinical trial is at the stage of

More information

Using V9 ODS LAYOUT to Simplify Generation of Individual Case Summaries Ling Y. Chen, Rho, Inc., Newton, MA

Using V9 ODS LAYOUT to Simplify Generation of Individual Case Summaries Ling Y. Chen, Rho, Inc., Newton, MA Paper PO02 Using V9 ODS LAYOUT to Simplify Generation of Individual Case Summaries Ling Y. Chen, Rho, Inc., Newton, MA ABSTRACT Up until now, individual case summaries involve complicated data _null_ coding

More information

Justina M. Flavin, Synteract, Inc.

Justina M. Flavin, Synteract, Inc. Using PROC REPORT to Summarize Clinical Safety Data Justina M. Flavin, Synteract, Inc. ABSTRACT By using the summary and display features available In PROC REPORT, the amount of code needed to generate

More information

Programming Gems that are worth learning SQL for! Pamela L. Reading, Rho, Inc., Chapel Hill, NC

Programming Gems that are worth learning SQL for! Pamela L. Reading, Rho, Inc., Chapel Hill, NC Paper CC-05 Programming Gems that are worth learning SQL for! Pamela L. Reading, Rho, Inc., Chapel Hill, NC ABSTRACT For many SAS users, learning SQL syntax appears to be a significant effort with a low

More information

%ANYTL: A Versatile Table/Listing Macro

%ANYTL: A Versatile Table/Listing Macro Paper AD09-2009 %ANYTL: A Versatile Table/Listing Macro Yang Chen, Forest Research Institute, Jersey City, NJ ABSTRACT Unlike traditional table macros, %ANTL has only 3 macro parameters which correspond

More information

PharmaSUG China 2018 Paper AD-62

PharmaSUG China 2018 Paper AD-62 PharmaSUG China 2018 Paper AD-62 Decomposition and Reconstruction of TLF Shells - A Simple, Fast and Accurate Shell Designer Chengeng Tian, dmed Biopharmaceutical Co., Ltd., Shanghai, China ABSTRACT Table/graph

More information

Using PROC REPORT to Cross-Tabulate Multiple Response Items Patrick Thornton, SRI International, Menlo Park, CA

Using PROC REPORT to Cross-Tabulate Multiple Response Items Patrick Thornton, SRI International, Menlo Park, CA Using PROC REPORT to Cross-Tabulate Multiple Response Items Patrick Thornton, SRI International, Menlo Park, CA ABSTRACT This paper describes for an intermediate SAS user the use of PROC REPORT to create

More information

SAS Macros for Grouping Count and Its Application to Enhance Your Reports

SAS Macros for Grouping Count and Its Application to Enhance Your Reports SAS Macros for Grouping Count and Its Application to Enhance Your Reports Shi-Tao Yeh, EDP Contract Services, Bala Cynwyd, PA ABSTRACT This paper provides two SAS macros, one for one grouping variable,

More information

A Macro to replace PROC REPORT!?

A Macro to replace PROC REPORT!? Paper TS03 A Macro to replace PROC REPORT!? Katja Glass, Bayer Pharma AG, Berlin, Germany ABSTRACT Some companies have macros for everything. But is that really required? Our company even has a macro to

More information

Chapter 6: Modifying and Combining Data Sets

Chapter 6: Modifying and Combining Data Sets Chapter 6: Modifying and Combining Data Sets The SET statement is a powerful statement in the DATA step. Its main use is to read in a previously created SAS data set which can be modified and saved as

More information

Get SAS sy with PROC SQL Amie Bissonett, Pharmanet/i3, Minneapolis, MN

Get SAS sy with PROC SQL Amie Bissonett, Pharmanet/i3, Minneapolis, MN PharmaSUG 2012 - Paper TF07 Get SAS sy with PROC SQL Amie Bissonett, Pharmanet/i3, Minneapolis, MN ABSTRACT As a data analyst for genetic clinical research, I was often working with familial data connecting

More information

%MAKE_IT_COUNT: An Example Macro for Dynamic Table Programming Britney Gilbert, Juniper Tree Consulting, Porter, Oklahoma

%MAKE_IT_COUNT: An Example Macro for Dynamic Table Programming Britney Gilbert, Juniper Tree Consulting, Porter, Oklahoma Britney Gilbert, Juniper Tree Consulting, Porter, Oklahoma ABSTRACT Today there is more pressure on programmers to deliver summary outputs faster without sacrificing quality. By using just a few programming

More information

STEP 1 - /*******************************/ /* Manipulate the data files */ /*******************************/ <<SAS DATA statements>>

STEP 1 - /*******************************/ /* Manipulate the data files */ /*******************************/ <<SAS DATA statements>> Generalized Report Programming Techniques Using Data-Driven SAS Code Kathy Hardis Fraeman, A.K. Analytic Programming, L.L.C., Olney, MD Karen G. Malley, Malley Research Programming, Inc., Rockville, MD

More information

Creating output datasets using SQL (Structured Query Language) only Andrii Stakhniv, Experis Clinical, Ukraine

Creating output datasets using SQL (Structured Query Language) only Andrii Stakhniv, Experis Clinical, Ukraine ABSTRACT PharmaSUG 2015 Paper QT22 Andrii Stakhniv, Experis Clinical, Ukraine PROC SQL is one of the most powerful procedures in SAS. With this tool we can easily manipulate data and create a large number

More information

Using PROC SQL to Calculate FIRSTOBS David C. Tabano, Kaiser Permanente, Denver, CO

Using PROC SQL to Calculate FIRSTOBS David C. Tabano, Kaiser Permanente, Denver, CO Using PROC SQL to Calculate FIRSTOBS David C. Tabano, Kaiser Permanente, Denver, CO ABSTRACT The power of SAS programming can at times be greatly improved using PROC SQL statements for formatting and manipulating

More information

Paper An Automated Reporting Macro to Create Cell Index An Enhanced Revisit. Shi-Tao Yeh, GlaxoSmithKline, King of Prussia, PA

Paper An Automated Reporting Macro to Create Cell Index An Enhanced Revisit. Shi-Tao Yeh, GlaxoSmithKline, King of Prussia, PA ABSTRACT Paper 236-28 An Automated Reporting Macro to Create Cell Index An Enhanced Revisit When generating tables from SAS PROC TABULATE or PROC REPORT to summarize data, sometimes it is necessary to

More information

Statistics and Data Analysis. Common Pitfalls in SAS Statistical Analysis Macros in a Mass Production Environment

Statistics and Data Analysis. Common Pitfalls in SAS Statistical Analysis Macros in a Mass Production Environment Common Pitfalls in SAS Statistical Analysis Macros in a Mass Production Environment Huei-Ling Chen, Merck & Co., Inc., Rahway, NJ Aiming Yang, Merck & Co., Inc., Rahway, NJ ABSTRACT Four pitfalls are commonly

More information

EXAMPLES OF DATA LISTINGS AND CLINICAL SUMMARY TABLES USING PROC REPORT'S BATCH LANGUAGE

EXAMPLES OF DATA LISTINGS AND CLINICAL SUMMARY TABLES USING PROC REPORT'S BATCH LANGUAGE EXAMPLES OF DATA LISTINGS AND CLINICAL SUMMARY TABLES USING PROC REPORT'S BATCH LANGUAGE Rob Hoffman Hoffmann-La Roche, Inc. Abstract PROC REPORT Is a powerful report writing tool which can easily create

More information

An Efficient Method to Create Titles for Multiple Clinical Reports Using Proc Format within A Do Loop Youying Yu, PharmaNet/i3, West Chester, Ohio

An Efficient Method to Create Titles for Multiple Clinical Reports Using Proc Format within A Do Loop Youying Yu, PharmaNet/i3, West Chester, Ohio PharmaSUG 2012 - Paper CC12 An Efficient Method to Create Titles for Multiple Clinical Reports Using Proc Format within A Do Loop Youying Yu, PharmaNet/i3, West Chester, Ohio ABSTRACT Do you know how to

More information

Customized Flowcharts Using SAS Annotation Abhinav Srivastva, PaxVax Inc., Redwood City, CA

Customized Flowcharts Using SAS Annotation Abhinav Srivastva, PaxVax Inc., Redwood City, CA ABSTRACT Customized Flowcharts Using SAS Annotation Abhinav Srivastva, PaxVax Inc., Redwood City, CA Data visualization is becoming a trend in all sectors where critical business decisions or assessments

More information

Are you Still Afraid of Using Arrays? Let s Explore their Advantages

Are you Still Afraid of Using Arrays? Let s Explore their Advantages Paper CT07 Are you Still Afraid of Using Arrays? Let s Explore their Advantages Vladyslav Khudov, Experis Clinical, Kharkiv, Ukraine ABSTRACT At first glance, arrays in SAS seem to be a complicated and

More information

PharmaSUG Paper TT11

PharmaSUG Paper TT11 PharmaSUG 2014 - Paper TT11 What is the Definition of Global On-Demand Reporting within the Pharmaceutical Industry? Eric Kammer, Novartis Pharmaceuticals Corporation, East Hanover, NJ ABSTRACT It is not

More information

This paper describes a report layout for reporting adverse events by study consumption pattern and explains its programming aspects.

This paper describes a report layout for reporting adverse events by study consumption pattern and explains its programming aspects. PharmaSUG China 2015 Adverse Event Data Programming for Infant Nutrition Trials Ganesh Lekurwale, Singapore Clinical Research Institute, Singapore Parag Wani, Singapore Clinical Research Institute, Singapore

More information

Multiple Graphical and Tabular Reports on One Page, Multiple Ways to Do It Niraj J Pandya, CT, USA

Multiple Graphical and Tabular Reports on One Page, Multiple Ways to Do It Niraj J Pandya, CT, USA Paper TT11 Multiple Graphical and Tabular Reports on One Page, Multiple Ways to Do It Niraj J Pandya, CT, USA ABSTRACT Creating different kind of reports for the presentation of same data sounds a normal

More information

Automating the Production of Formatted Item Frequencies using Survey Metadata

Automating the Production of Formatted Item Frequencies using Survey Metadata Automating the Production of Formatted Item Frequencies using Survey Metadata Tim Tilert, Centers for Disease Control and Prevention (CDC) / National Center for Health Statistics (NCHS) Jane Zhang, CDC

More information

BY S NOTSORTED OPTION Karuna Samudral, Octagon Research Solutions, Inc., Wayne, PA Gregory M. Giddings, Centocor R&D Inc.

BY S NOTSORTED OPTION Karuna Samudral, Octagon Research Solutions, Inc., Wayne, PA Gregory M. Giddings, Centocor R&D Inc. ABSTRACT BY S NOTSORTED OPTION Karuna Samudral, Octagon Research Solutions, Inc., Wayne, PA Gregory M. Giddings, Centocor R&D Inc., Malvern, PA What if the usual sort and usual group processing would eliminate

More information

Compute; Your Future with Proc Report

Compute; Your Future with Proc Report Paper PO10 Compute; Your Future with Proc Report Ian J Dixon, GlaxoSmithKline, Harlow, UK Suzanne E Johnes, GlaxoSmithKline, Harlow, UK ABSTRACT PROC REPORT is widely used within the pharmaceutical industry

More information

Automate Clinical Trial Data Issue Checking and Tracking

Automate Clinical Trial Data Issue Checking and Tracking PharmaSUG 2018 - Paper AD-31 ABSTRACT Automate Clinical Trial Data Issue Checking and Tracking Dale LeSueur and Krishna Avula, Regeneron Pharmaceuticals Inc. Well organized and properly cleaned data are

More information

Data Standardisation, Clinical Data Warehouse and SAS Standard Programs

Data Standardisation, Clinical Data Warehouse and SAS Standard Programs Paper number: AD03 Data Standardisation, Clinical Data Warehouse and SAS Standard Programs Jean-Marc Ferran, Standardisation Manager, MSc 1 Mikkel Traun, Functional Architect, MSc 1 Pia Hjulskov Kristensen,

More information

How to Keep Multiple Formats in One Variable after Transpose Mindy Wang

How to Keep Multiple Formats in One Variable after Transpose Mindy Wang How to Keep Multiple Formats in One Variable after Transpose Mindy Wang Abstract In clinical trials and many other research fields, proc transpose are used very often. When many variables with their individual

More information

Give me EVERYTHING! A macro to combine the CONTENTS procedure output and formats. Lynn Mullins, PPD, Cincinnati, Ohio

Give me EVERYTHING! A macro to combine the CONTENTS procedure output and formats. Lynn Mullins, PPD, Cincinnati, Ohio PharmaSUG 2014 - Paper CC43 Give me EVERYTHING! A macro to combine the CONTENTS procedure output and formats. Lynn Mullins, PPD, Cincinnati, Ohio ABSTRACT The PROC CONTENTS output displays SAS data set

More information

Prove QC Quality Create SAS Datasets from RTF Files Honghua Chen, OCKHAM, Cary, NC

Prove QC Quality Create SAS Datasets from RTF Files Honghua Chen, OCKHAM, Cary, NC Prove QC Quality Create SAS Datasets from RTF Files Honghua Chen, OCKHAM, Cary, NC ABSTRACT Since collecting drug trial data is expensive and affects human life, the FDA and most pharmaceutical company

More information

Report Writing, SAS/GRAPH Creation, and Output Verification using SAS/ASSIST Matthew J. Becker, ST TPROBE, inc., Ann Arbor, MI

Report Writing, SAS/GRAPH Creation, and Output Verification using SAS/ASSIST Matthew J. Becker, ST TPROBE, inc., Ann Arbor, MI Report Writing, SAS/GRAPH Creation, and Output Verification using SAS/ASSIST Matthew J. Becker, ST TPROBE, inc., Ann Arbor, MI Abstract Since the release of SAS/ASSIST, SAS has given users more flexibility

More information

Paper FC02. SDTM, Plus or Minus. Barry R. Cohen, Octagon Research Solutions, Wayne, PA

Paper FC02. SDTM, Plus or Minus. Barry R. Cohen, Octagon Research Solutions, Wayne, PA Paper FC02 SDTM, Plus or Minus Barry R. Cohen, Octagon Research Solutions, Wayne, PA ABSTRACT The CDISC Study Data Tabulation Model (SDTM) has become the industry standard for the regulatory submission

More information

The Power of Combining Data with the PROC SQL

The Power of Combining Data with the PROC SQL ABSTRACT Paper CC-09 The Power of Combining Data with the PROC SQL Stacey Slone, University of Kentucky Markey Cancer Center Combining two data sets which contain a common identifier with a MERGE statement

More information

USING DATA TO SET MACRO PARAMETERS

USING DATA TO SET MACRO PARAMETERS USING DATA TO SET MACRO PARAMETERS UPDATE A PREVIOUS EXAMPLE %macro report(regs=); %let r=1; %let region=%scan(&regs,&r); %do %until(&region eq ); options nodate pageno=1; ods pdf file="&region..pdf";

More information

From Manual to Automatic with Overdrive - Using SAS to Automate Report Generation Faron Kincheloe, Baylor University, Waco, TX

From Manual to Automatic with Overdrive - Using SAS to Automate Report Generation Faron Kincheloe, Baylor University, Waco, TX Paper 152-27 From Manual to Automatic with Overdrive - Using SAS to Automate Report Generation Faron Kincheloe, Baylor University, Waco, TX ABSTRACT This paper is a case study of how SAS products were

More information

Setting the Percentage in PROC TABULATE

Setting the Percentage in PROC TABULATE SESUG Paper 193-2017 Setting the Percentage in PROC TABULATE David Franklin, QuintilesIMS, Cambridge, MA ABSTRACT PROC TABULATE is a very powerful procedure which can do statistics and frequency counts

More information

Practical Uses of the DOW Loop Richard Read Allen, Peak Statistical Services, Evergreen, CO

Practical Uses of the DOW Loop Richard Read Allen, Peak Statistical Services, Evergreen, CO Practical Uses of the DOW Loop Richard Read Allen, Peak Statistical Services, Evergreen, CO ABSTRACT The DOW-Loop was originally developed by Don Henderson and popularized the past few years on the SAS-L

More information

PhUse Practical Uses of the DOW Loop in Pharmaceutical Programming Richard Read Allen, Peak Statistical Services, Evergreen, CO, USA

PhUse Practical Uses of the DOW Loop in Pharmaceutical Programming Richard Read Allen, Peak Statistical Services, Evergreen, CO, USA PhUse 2009 Paper Tu01 Practical Uses of the DOW Loop in Pharmaceutical Programming Richard Read Allen, Peak Statistical Services, Evergreen, CO, USA ABSTRACT The DOW-Loop was originally developed by Don

More information

CREATING A SUMMARY TABLE OF NORMALIZED (Z) SCORES

CREATING A SUMMARY TABLE OF NORMALIZED (Z) SCORES CREATING A SUMMARY TABLE OF NORMALIZED (Z) SCORES Walter W. OWen The Biostatistics Center The George Washington University ABSTRACT Data from the behavioral sciences are often analyzed by normalizing the

More information

ODS/RTF Pagination Revisit

ODS/RTF Pagination Revisit PharmaSUG 2018 - Paper QT-01 ODS/RTF Pagination Revisit Ya Huang, Halozyme Therapeutics, Inc. Bryan Callahan, Halozyme Therapeutics, Inc. ABSTRACT ODS/RTF combined with PROC REPORT has been used to generate

More information

PROC REPORT Basics: Getting Started with the Primary Statements

PROC REPORT Basics: Getting Started with the Primary Statements Paper HOW07 PROC REPORT Basics: Getting Started with the Primary Statements Arthur L. Carpenter California Occidental Consultants, Oceanside, California ABSTRACT The presentation of data is an essential

More information

It s Proc Tabulate Jim, but not as we know it!

It s Proc Tabulate Jim, but not as we know it! Paper SS02 It s Proc Tabulate Jim, but not as we know it! Robert Walls, PPD, Bellshill, UK ABSTRACT PROC TABULATE has received a very bad press in the last few years. Most SAS Users have come to look on

More information

ABSTRACT INTRODUCTION WHERE TO START? 1. DATA CHECK FOR CONSISTENCIES

ABSTRACT INTRODUCTION WHERE TO START? 1. DATA CHECK FOR CONSISTENCIES Developing Integrated Summary of Safety Database using CDISC Standards Rajkumar Sharma, Genentech Inc., A member of the Roche Group, South San Francisco, CA ABSTRACT Most individual trials are not powered

More information

Validation Summary using SYSINFO

Validation Summary using SYSINFO Validation Summary using SYSINFO Srinivas Vanam Mahipal Vanam Shravani Vanam Percept Pharma Services, Bridgewater, NJ ABSTRACT This paper presents a macro that produces a Validation Summary using SYSINFO

More information

Checking for Duplicates Wendi L. Wright

Checking for Duplicates Wendi L. Wright Checking for Duplicates Wendi L. Wright ABSTRACT This introductory level paper demonstrates a quick way to find duplicates in a dataset (with both simple and complex keys). It discusses what to do when

More information

The Proc Transpose Cookbook

The Proc Transpose Cookbook ABSTRACT PharmaSUG 2017 - Paper TT13 The Proc Transpose Cookbook Douglas Zirbel, Wells Fargo and Co. Proc TRANSPOSE rearranges columns and rows of SAS datasets, but its documentation and behavior can be

More information

Creating Forest Plots Using SAS/GRAPH and the Annotate Facility

Creating Forest Plots Using SAS/GRAPH and the Annotate Facility PharmaSUG2011 Paper TT12 Creating Forest Plots Using SAS/GRAPH and the Annotate Facility Amanda Tweed, Millennium: The Takeda Oncology Company, Cambridge, MA ABSTRACT Forest plots have become common in

More information

Ditch the Data Memo: Using Macro Variables and Outer Union Corresponding in PROC SQL to Create Data Set Summary Tables Andrea Shane MDRC, Oakland, CA

Ditch the Data Memo: Using Macro Variables and Outer Union Corresponding in PROC SQL to Create Data Set Summary Tables Andrea Shane MDRC, Oakland, CA ABSTRACT Ditch the Data Memo: Using Macro Variables and Outer Union Corresponding in PROC SQL to Create Data Set Summary Tables Andrea Shane MDRC, Oakland, CA Data set documentation is essential to good

More information

Clinical Data Visualization using TIBCO Spotfire and SAS

Clinical Data Visualization using TIBCO Spotfire and SAS ABSTRACT SESUG Paper RIV107-2017 Clinical Data Visualization using TIBCO Spotfire and SAS Ajay Gupta, PPD, Morrisville, USA In Pharmaceuticals/CRO industries, you may receive requests from stakeholders

More information

Working with Composite Endpoints: Constructing Analysis Data Pushpa Saranadasa, Merck & Co., Inc., Upper Gwynedd, PA

Working with Composite Endpoints: Constructing Analysis Data Pushpa Saranadasa, Merck & Co., Inc., Upper Gwynedd, PA PharmaSug2016- Paper HA03 Working with Composite Endpoints: Constructing Analysis Data Pushpa Saranadasa, Merck & Co., Inc., Upper Gwynedd, PA ABSTRACT A composite endpoint in a Randomized Clinical Trial

More information

Remove this where. statement to produce the. report on the right with all 4 regions. Retain this where. statement to produce the

Remove this where. statement to produce the. report on the right with all 4 regions. Retain this where. statement to produce the Problem 4, Chapter 14, Ex. 2. Using the SAS sales data set, create the report shown in the text. Note: The report shown in the text for this question, contains only East & West region data. However, the

More information

Tools to Facilitate the Creation of Pooled Clinical Trials Databases

Tools to Facilitate the Creation of Pooled Clinical Trials Databases Paper AD10 Tools to Facilitate the Creation of Pooled Clinical Trials Databases Patricia Majcher, Johnson & Johnson Pharmaceutical Research & Development, L.L.C., Raritan, NJ ABSTRACT Data collected from

More information

Automated Macros to Extract Data from the National (Nationwide) Inpatient Sample (NIS)

Automated Macros to Extract Data from the National (Nationwide) Inpatient Sample (NIS) Paper 3327-2015 Automated Macros to Extract Data from the National (Nationwide) Inpatient Sample (NIS) Ravi Gaddameedi, California State University, Eastbay, CA; Usha Kreaden, Intuitive Surgical, Sunnyvale,

More information

How to write ADaM specifications like a ninja.

How to write ADaM specifications like a ninja. Poster PP06 How to write ADaM specifications like a ninja. Caroline Francis, Independent SAS & Standards Consultant, Torrevieja, Spain ABSTRACT To produce analysis datasets from CDISC Study Data Tabulation

More information

A Breeze through SAS options to Enter a Zero-filled row Kajal Tahiliani, ICON Clinical Research, Warrington, PA

A Breeze through SAS options to Enter a Zero-filled row Kajal Tahiliani, ICON Clinical Research, Warrington, PA ABSTRACT: A Breeze through SAS options to Enter a Zero-filled row Kajal Tahiliani, ICON Clinical Research, Warrington, PA Programmers often need to summarize data into tables as per template. But study

More information

Standard Safety Visualization Set-up Using Spotfire

Standard Safety Visualization Set-up Using Spotfire Paper SD08 Standard Safety Visualization Set-up Using Spotfire Michaela Mertes, F. Hoffmann-La Roche, Ltd., Basel, Switzerland ABSTRACT Stakeholders are requesting real-time access to clinical data to

More information

Compute Blocks in Report

Compute Blocks in Report Compute Blocks in Report Compute Blocks Though it is always possible to compute new variables inside a data step, PROC REPORT allows for similar computations to be done internally as well. Computations

More information

Paper # Jazz it up a Little with Formats. Brian Bee, The Knowledge Warehouse Ltd

Paper # Jazz it up a Little with Formats. Brian Bee, The Knowledge Warehouse Ltd Paper #1495-2014 Jazz it up a Little with Formats Brian Bee, The Knowledge Warehouse Ltd Abstract Formats are an often under-valued tool in the SAS toolbox. They can be used in just about all domains to

More information

Benchmark Macro %COMPARE Sreekanth Reddy Middela, MaxisIT Inc., Edison, NJ Venkata Sekhar Bhamidipati, Merck & Co., Inc.

Benchmark Macro %COMPARE Sreekanth Reddy Middela, MaxisIT Inc., Edison, NJ Venkata Sekhar Bhamidipati, Merck & Co., Inc. Benchmark Macro %COMPARE Sreekanth Reddy Middela, MaxisIT Inc., Edison, NJ Venkata Sekhar Bhamidipati, Merck & Co., Inc., North Wales, PA ABSTRACT The main functionality of benchmark macro %Compare is

More information

An Animated Guide: Proc Transpose

An Animated Guide: Proc Transpose ABSTRACT An Animated Guide: Proc Transpose Russell Lavery, Independent Consultant If one can think about a SAS data set as being made up of columns and rows one can say Proc Transpose flips the columns

More information

Table of Contents. The RETAIN Statement. The LAG and DIF Functions. FIRST. and LAST. Temporary Variables. List of Programs.

Table of Contents. The RETAIN Statement. The LAG and DIF Functions. FIRST. and LAST. Temporary Variables. List of Programs. Table of Contents List of Programs Preface Acknowledgments ix xvii xix The RETAIN Statement Introduction 1 Demonstrating a DATA Step with and without a RETAIN Statement 1 Generating Sequential SUBJECT

More information

A Generalized Procedure to Create SAS /Graph Error Bar Plots

A Generalized Procedure to Create SAS /Graph Error Bar Plots Generalized Procedure to Create SS /Graph Error Bar Plots Sanjiv Ramalingam, Consultant, Octagon Research Solutions, Inc. BSTRCT Different methodologies exist to create error bar related plots. Procedures

More information

Paper S Data Presentation 101: An Analyst s Perspective

Paper S Data Presentation 101: An Analyst s Perspective Paper S1-12-2013 Data Presentation 101: An Analyst s Perspective Deanna Chyn, University of Michigan, Ann Arbor, MI Anca Tilea, University of Michigan, Ann Arbor, MI ABSTRACT You are done with the tedious

More information

Facilitate Statistical Analysis with Automatic Collapsing of Small Size Strata

Facilitate Statistical Analysis with Automatic Collapsing of Small Size Strata PO23 Facilitate Statistical Analysis with Automatic Collapsing of Small Size Strata Sunil Gupta, Linfeng Xu, Quintiles, Inc., Thousand Oaks, CA ABSTRACT Often in clinical studies, even after great efforts

More information

Square Peg, Square Hole Getting Tables to Fit on Slides in the ODS Destination for PowerPoint

Square Peg, Square Hole Getting Tables to Fit on Slides in the ODS Destination for PowerPoint PharmaSUG 2018 - Paper DV-01 Square Peg, Square Hole Getting Tables to Fit on Slides in the ODS Destination for PowerPoint Jane Eslinger, SAS Institute Inc. ABSTRACT An output table is a square. A slide

More information

Getting Up to Speed with PROC REPORT Kimberly LeBouton, K.J.L. Computing, Rossmoor, CA

Getting Up to Speed with PROC REPORT Kimberly LeBouton, K.J.L. Computing, Rossmoor, CA SESUG 2012 Paper HW-01 Getting Up to Speed with PROC REPORT Kimberly LeBouton, K.J.L. Computing, Rossmoor, CA ABSTRACT Learning the basics of PROC REPORT can help the new SAS user avoid hours of headaches.

More information

Keeping Track of Database Changes During Database Lock

Keeping Track of Database Changes During Database Lock Paper CC10 Keeping Track of Database Changes During Database Lock Sanjiv Ramalingam, Biogen Inc., Cambridge, USA ABSTRACT Higher frequency of data transfers combined with greater likelihood of changes

More information

Advanced Visualization using TIBCO Spotfire and SAS

Advanced Visualization using TIBCO Spotfire and SAS PharmaSUG 2018 - Paper DV-04 ABSTRACT Advanced Visualization using TIBCO Spotfire and SAS Ajay Gupta, PPD, Morrisville, USA In Pharmaceuticals/CRO industries, you may receive requests from stakeholders

More information

CMISS the SAS Function You May Have Been MISSING Mira Shapiro, Analytic Designers LLC, Bethesda, MD

CMISS the SAS Function You May Have Been MISSING Mira Shapiro, Analytic Designers LLC, Bethesda, MD ABSTRACT SESUG 2016 - RV-201 CMISS the SAS Function You May Have Been MISSING Mira Shapiro, Analytic Designers LLC, Bethesda, MD Those of us who have been using SAS for more than a few years often rely

More information

Hands-On ADaM ADAE Development Sandra Minjoe, Accenture Life Sciences, Wayne, Pennsylvania Kim Minkalis, Accenture Life Sciences, Wayne, Pennsylvania

Hands-On ADaM ADAE Development Sandra Minjoe, Accenture Life Sciences, Wayne, Pennsylvania Kim Minkalis, Accenture Life Sciences, Wayne, Pennsylvania PharmaSUG 2014 - Paper HT03 Hands-On ADaM ADAE Development Sandra Minjoe, Accenture Life Sciences, Wayne, Pennsylvania Kim Minkalis, Accenture Life Sciences, Wayne, Pennsylvania ABSTRACT The Analysis Data

More information

Using SAS Macro to Include Statistics Output in Clinical Trial Summary Table

Using SAS Macro to Include Statistics Output in Clinical Trial Summary Table Using SAS Macro to Include Statistics Output in Clinical Trial Summary Table Amy C. Young, Ischemia Research and Education Foundation, San Francisco, CA Sharon X. Zhou, Ischemia Research and Education

More information

SAS Online Training: Course contents: Agenda:

SAS Online Training: Course contents: Agenda: SAS Online Training: Course contents: Agenda: (1) Base SAS (6) Clinical SAS Online Training with Real time Projects (2) Advance SAS (7) Financial SAS Training Real time Projects (3) SQL (8) CV preparation

More information

PharmaSUG China Paper 70

PharmaSUG China Paper 70 ABSTRACT PharmaSUG China 2015 - Paper 70 SAS Longitudinal Data Techniques - From Change from Baseline to Change from Previous Visits Chao Wang, Fountain Medical Development, Inc., Nanjing, China Longitudinal

More information

Data Quality Review for Missing Values and Outliers

Data Quality Review for Missing Values and Outliers Paper number: PH03 Data Quality Review for Missing Values and Outliers Ying Guo, i3, Indianapolis, IN Bradford J. Danner, i3, Lincoln, NE ABSTRACT Before performing any analysis on a dataset, it is often

More information

Generating Customized Analytical Reports from SAS Procedure Output Brinda Bhaskar and Kennan Murray, RTI International

Generating Customized Analytical Reports from SAS Procedure Output Brinda Bhaskar and Kennan Murray, RTI International Abstract Generating Customized Analytical Reports from SAS Procedure Output Brinda Bhaskar and Kennan Murray, RTI International SAS has many powerful features, including MACRO facilities, procedures such

More information

How to Go From SAS Data Sets to DATA NULL or WordPerfect Tables Anne Horney, Cooperative Studies Program Coordinating Center, Perry Point, Maryland

How to Go From SAS Data Sets to DATA NULL or WordPerfect Tables Anne Horney, Cooperative Studies Program Coordinating Center, Perry Point, Maryland How to Go From SAS Data Sets to DATA NULL or WordPerfect Tables Anne Horney, Cooperative Studies Program Coordinating Center, Perry Point, Maryland ABSTRACT Clinical trials data reports often contain many

More information

The Benefits of Traceability Beyond Just From SDTM to ADaM in CDISC Standards Maggie Ci Jiang, Teva Pharmaceuticals, Great Valley, PA

The Benefits of Traceability Beyond Just From SDTM to ADaM in CDISC Standards Maggie Ci Jiang, Teva Pharmaceuticals, Great Valley, PA PharmaSUG 2017 - Paper DS23 The Benefits of Traceability Beyond Just From SDTM to ADaM in CDISC Standards Maggie Ci Jiang, Teva Pharmaceuticals, Great Valley, PA ABSTRACT Since FDA released the Analysis

More information

Post-Processing.LST files to get what you want

Post-Processing.LST files to get what you want Paper CC04 Post-Processing.LST files to get what you want Edward Foster, Oxford Pharmaceutical Sciences, UK ABSTRACT SAS has a range of procedures you can use to create table and listing output. These

More information

Taming the Box Plot. Sanjiv Ramalingam, Octagon Research Solutions, Inc., Wayne, PA

Taming the Box Plot. Sanjiv Ramalingam, Octagon Research Solutions, Inc., Wayne, PA Taming the Box Plot Sanjiv Ramalingam, Octagon Research Solutions, Inc., Wayne, PA ABSTRACT Box plots are used to portray the range, quartiles and outliers if any in the data. PROC BOXPLOT can be used

More information

TYPES OF VARIABLES, STRUCTURE OF DATASETS, AND BASIC STATA LAYOUT

TYPES OF VARIABLES, STRUCTURE OF DATASETS, AND BASIC STATA LAYOUT PRIMER FOR ACS OUTCOMES RESEARCH COURSE: TYPES OF VARIABLES, STRUCTURE OF DATASETS, AND BASIC STATA LAYOUT STEP 1: Install STATA statistical software. STEP 2: Read through this primer and complete the

More information

Sorting big datasets. Do we really need it? Daniil Shliakhov, Experis Clinical, Kharkiv, Ukraine

Sorting big datasets. Do we really need it? Daniil Shliakhov, Experis Clinical, Kharkiv, Ukraine PharmaSUG 2015 - Paper QT21 Sorting big datasets. Do we really need it? Daniil Shliakhov, Experis Clinical, Kharkiv, Ukraine ABSTRACT Very often working with big data causes difficulties for SAS programmers.

More information

Get Started Writing SAS Macros Luisa Hartman, Jane Liao, Merck Sharp & Dohme Corp.

Get Started Writing SAS Macros Luisa Hartman, Jane Liao, Merck Sharp & Dohme Corp. Get Started Writing SAS Macros Luisa Hartman, Jane Liao, Merck Sharp & Dohme Corp. ABSTRACT The SAS Macro Facility is a tool which lends flexibility to your SAS code and promotes easier maintenance. It

More information

Traceability in the ADaM Standard Ed Lombardi, SynteractHCR, Inc., Carlsbad, CA

Traceability in the ADaM Standard Ed Lombardi, SynteractHCR, Inc., Carlsbad, CA ABSTRACT PharmaSUG 2013 - Paper PO13 Traceability in the ADaM Standard Ed Lombardi, SynteractHCR, Inc., Carlsbad, CA Traceability is one of the fundamentals of the ADaM Standard. However, there is not

More information

SAS CLINICAL SYLLABUS. DURATION: - 60 Hours

SAS CLINICAL SYLLABUS. DURATION: - 60 Hours SAS CLINICAL SYLLABUS DURATION: - 60 Hours BASE SAS PART - I Introduction To Sas System & Architecture History And Various Modules Features Variables & Sas Syntax Rules Sas Data Sets Data Set Options Operators

More information

To conceptualize the process, the table below shows the highly correlated covariates in descending order of their R statistic.

To conceptualize the process, the table below shows the highly correlated covariates in descending order of their R statistic. Automating the process of choosing among highly correlated covariates for multivariable logistic regression Michael C. Doherty, i3drugsafety, Waltham, MA ABSTRACT In observational studies, there can be

More information

Making a List, Checking it Twice (Part 1): Techniques for Specifying and Validating Analysis Datasets

Making a List, Checking it Twice (Part 1): Techniques for Specifying and Validating Analysis Datasets PharmaSUG2011 Paper CD17 Making a List, Checking it Twice (Part 1): Techniques for Specifying and Validating Analysis Datasets Elizabeth Li, PharmaStat LLC, Newark, California Linda Collins, PharmaStat

More information

A Tool to Compare Different Data Transfers Jun Wang, FMD K&L, Inc., Nanjing, China

A Tool to Compare Different Data Transfers Jun Wang, FMD K&L, Inc., Nanjing, China PharmaSUG China 2018 Paper 64 A Tool to Compare Different Data Transfers Jun Wang, FMD K&L, Inc., Nanjing, China ABSTRACT For an ongoing study, especially for middle-large size studies, regular or irregular

More information

The Dataset Diet How to transform short and fat into long and thin

The Dataset Diet How to transform short and fat into long and thin Paper TU06 The Dataset Diet How to transform short and fat into long and thin Kathryn Wright, Oxford Pharmaceutical Sciences, UK ABSTRACT What do you do when you are given a dataset with one observation

More information

Create Flowcharts Using Annotate Facility. Priya Saradha & Gurubaran Veeravel

Create Flowcharts Using Annotate Facility. Priya Saradha & Gurubaran Veeravel Create Flowcharts Using Annotate Facility Priya Saradha & Gurubaran Veeravel Abstract With mounting significance to the graphical presentation of data in different forms in the pharmaceutical industry,

More information

A Practical Introduction to SAS Data Integration Studio

A Practical Introduction to SAS Data Integration Studio ABSTRACT A Practical Introduction to SAS Data Integration Studio Erik Larsen, Independent Consultant, Charleston, SC Frank Ferriola, Financial Risk Group, Cary, NC A useful and often overlooked tool which

More information

Summary Table for Displaying Results of a Logistic Regression Analysis

Summary Table for Displaying Results of a Logistic Regression Analysis PharmaSUG 2018 - Paper EP-23 Summary Table for Displaying Results of a Logistic Regression Analysis Lori S. Parsons, ICON Clinical Research, Medical Affairs Statistical Analysis ABSTRACT When performing

More information

186 Statistics, Data Analysis and Modeling. Proceedings of MWSUG '95

186 Statistics, Data Analysis and Modeling. Proceedings of MWSUG '95 A Statistical Analysis Macro Library in SAS Carl R. Haske, Ph.D., STATPROBE, nc., Ann Arbor, M Vivienne Ward, M.S., STATPROBE, nc., Ann Arbor, M ABSTRACT Statistical analysis plays a major role in pharmaceutical

More information

Pharmaceuticals, Health Care, and Life Sciences

Pharmaceuticals, Health Care, and Life Sciences Successful Lab Result Conversion for LAB Analysis Data with Minimum Effort Pushpa Saranadasa, Merck & Co., Inc. INTRODUCTION In the pharmaceutical industry, the statistical results of a clinical trial's

More information

Automating Preliminary Data Cleaning in SAS

Automating Preliminary Data Cleaning in SAS Paper PO63 Automating Preliminary Data Cleaning in SAS Alec Zhixiao Lin, Loan Depot, Foothill Ranch, CA ABSTRACT Preliminary data cleaning or scrubbing tries to delete the following types of variables

More information