137-2013: adding new rows in the adam basic data structure

12
1 Paper 137-2013 Adding New Rows in the ADaM Basic Data Structure: When and How Mario Widel, Roche Molecular Systems Sandra Minjoe, Accenture Life Sciences ABSTRACT The ADaM (Analysis Data Model) BDS (Basic Data Structure) has specific rules to follow when adding columns or rows. Because there are limitations to what can be added as a column to a BDS structure, much of our derived content must be added as rows. This HOW uses a Vital Signs example, demonstrating the common BDS dataset need of adding analysis parameters and visits. Attendees will start with a general specification and mock-up, and use that to create metadata content that can be used for both detailed specification and within a define document. The resulting metadata will include both variable-level and parameter-level content and contain SAS® code snippets. This is an intermediate-level HOW. Attendees are expected to be familiar with the analysis needs of clinical trials, CDISC, and submissions to FDA. INTRODUCTION This paper provides a brief summary on the topic of adding rows in the ADaM BDS structure. It supports the Hands- On Workshop, where attendees work to develop the structure of a BDS dataset. Content provided here is taken from ADaM documents and slides, and is meant to supplement rather than replace the hands-on component. ADAM BASICS The following is an excerpt from the ADaM Implementation Guide Version 1.0, Section 4.2: “In the ADaM BDS, subjects, analysis parameters, and analysis timepoints define rows and are identified in standard columns. Subject, parameter and timepoint in combination may not be enough to serve as natural keys (unique record identifiers). There may be multiple rows within a given combination, depending on the number of observations collected or derived, baseline definition, etc. Standard columns exist for a variety of purposes, such as SDTM record identifiers for traceability, population and other record selection flags, analysis values, and some standard functions of analysis values. Permissible columns are not limited to those whose variable names are specified in Section 3, and may include study-specific analysis model covariates, subgrouping variables, variables supportive of traceability, and other variables needed for analysis or useful for review. However, there are some constraints on when derived data may be added as columns. Specifically, the subject of Section 4.2 is to address when functions of analysis values should be added as additional columns, and when they should be added as additional rows instead. The precise sequence of steps involved in creating a BDS analysis dataset varies according to operational and study-specific needs. For the purposes of this discussion, it is useful to think of two initial steps. The first step is to create a set of rows and columns more or less directly derived from or loaded from input SDTM domains into their appropriate places. This step may include creation of analysis parameters (PARAM etc.), analysis timepoint (AVISIT etc.) and analysis variables (AVAL and AVALC). It would also include addition of identifiers (STUDYID, SITEID, USUBJID, SUBJID) and other SDTM variables for traceability (VISIT, --SEQ, etc.). The second step consists of further derivation of additional rows and columns based on this precursor set of analysis dataset records and columns. It is this second step that is addressed in Section 4.2. To be specific, derived rows and columns are defined in Section 4.2 to be rows and columns that are created based on data already present in the analysis dataset, as opposed to data that are (1) copied or derived directly from SDTM; or (2) copied or derived directly from other analysis datasets or metadata. This section only addresses the creation of columns and rows to accommodate such internally-derived data. Hands-on Workshops SAS Global Forum 2013

Upload: vucong

Post on 31-Dec-2016

223 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: 137-2013: Adding New Rows in the ADaM Basic Data Structure

1

Paper 137-2013

Adding New Rows in the ADaM Basic Data Structure: When and How

Mario Widel, Roche Molecular Systems

Sandra Minjoe, Accenture Life Sciences

ABSTRACT

The ADaM (Analysis Data Model) BDS (Basic Data Structure) has specific rules to follow when adding columns or rows. Because there are limitations to what can be added as a column to a BDS structure, much of our derived content must be added as rows.

This HOW uses a Vital Signs example, demonstrating the common BDS dataset need of adding analysis parameters and visits. Attendees will start with a general specification and mock-up, and use that to create metadata content that can be used for both detailed specification and within a define document. The resulting metadata will include both variable-level and parameter-level content and contain SAS® code snippets. This is an intermediate-level HOW. Attendees are expected to be familiar with the analysis needs of clinical trials, CDISC, and submissions to FDA.

INTRODUCTION

This paper provides a brief summary on the topic of adding rows in the ADaM BDS structure. It supports the Hands-On Workshop, where attendees work to develop the structure of a BDS dataset. Content provided here is taken from ADaM documents and slides, and is meant to supplement rather than replace the hands-on component.

ADAM BASICS

The following is an excerpt from the ADaM Implementation Guide Version 1.0, Section 4.2:

“In the ADaM BDS, subjects, analysis parameters, and analysis timepoints define rows and are identified in standard columns. Subject, parameter and timepoint in combination may not be enough to serve as natural keys (unique record identifiers). There may be multiple rows within a given combination, depending on the number of observations collected or derived, baseline definition, etc.

Standard columns exist for a variety of purposes, such as SDTM record identifiers for traceability, population and other record selection flags, analysis values, and some standard functions of analysis values. Permissible columns are not limited to those whose variable names are specified in Section 3, and may include study-specific analysis model covariates, subgrouping variables, variables supportive of traceability, and other variables needed for analysis or useful for review.

However, there are some constraints on when derived data may be added as columns. Specifically, the subject of Section 4.2 is to address when functions of analysis values should be added as additional columns, and when they should be added as additional rows instead.

The precise sequence of steps involved in creating a BDS analysis dataset varies according to operational and study-specific needs. For the purposes of this discussion, it is useful to think of two initial steps.

The first step is to create a set of rows and columns more or less directly derived from or loaded from input SDTM domains into their appropriate places. This step may include creation of analysis parameters (PARAM etc.), analysis timepoint (AVISIT etc.) and analysis variables (AVAL and AVALC). It would also include addition of identifiers (STUDYID, SITEID, USUBJID, SUBJID) and other SDTM variables for traceability (VISIT, --SEQ, etc.).

The second step consists of further derivation of additional rows and columns based on this precursor set of analysis dataset records and columns. It is this second step that is addressed in Section 4.2.

To be specific, derived rows and columns are defined in Section 4.2 to be rows and columns that are created based on data already present in the analysis dataset, as opposed to data that are (1) copied or derived directly from SDTM; or (2) copied or derived directly from other analysis datasets or metadata. This section only addresses the creation of columns and rows to accommodate such internally-derived data.

Hands-on WorkshopsSAS Global Forum 2013

Page 2: 137-2013: Adding New Rows in the ADaM Basic Data Structure

2

This section discusses the ADaM rules that govern when such internal derivation of data should result in creation of columns, and when it should result in creation of rows. These rules are an essential part of the definition of the BDS.”

ADAM IN THE CLINICAL PROCESS

The ADaM role in the clinical analysis process includes the production of both analysis datasets and reports, as shown in the diagram below:

The purpose of each ADaM Dataset is to provide what is needed to produce desired results. Recommended steps for ADaM dataset production are:

Create results metadata (specs) Create analysis dataset and parameter metadata (specs) Create analysis data

Create analysis results

KEY PRINCIPLES OF ADAM

Traceable

Provide clear and unambiguous communication of science and statistics

Think like a reviewer: Follow the trail backward from Result -> Analysis Dataset -> Tabulation Dataset -> (e)CRF. Did you do what the SAP said you’d do? If not, do you explain why?

Analyzable

Formerly known as “one proc away”

Separates data derivations from statistical procedure 1. Create dataset 2. Use dataset to derive analysis results

Reduces programming required to (re)generate results, could be done by someone with limited programming knowledge

Hands-on WorkshopsSAS Global Forum 2013

Page 3: 137-2013: Adding New Rows in the ADaM Basic Data Structure

3

Useable

Vendor-neutral tools, such as SAS, S+, JMP, Excel, etc. Currently this means SAS v5 transport files, a simple 2-dimensional structure Next: potentially XML, with more than 2-dimensions allowed

Readable

Metadata provides additional information not available from the data itself, such as transformations, imputations and other derivations; statistical methods used; assumptions made

Humans for now, machines in future, enormous potential for tool development

BASIC RULES FOR CREATING DATA

Name analysis datasets as ADXxxxxx. For example ADSL, ADTTE, ADLB, etc. Create ADaM datasets with specific analysis results in mind. Only create data you need. Not all SDTM data needs to be included in an analysis dataset Use SDTM Conventions for naming variables and variable fragments. Copy variables from SDTM as needed. Add “N” suffix to name when creating a numeric version of a character SDTM variable

Same name / same label / same attributes. When copying an SDTM variable, ALL attributes must remain unchanged. If anything is not the same, create a new variable.

ADSL BASICS

ADSL = Subject-Level Analysis Dataset 1-record per Subject Source: SDTM

Content: Basic subject-level information. The method to get basic subject-level information added to any other dataset Useful for generating table denominators

Demography and Disposition results can usually be derived directly from ADSL

BASIC DATA STRUCTURE (BDS)

The BDS structure is one record per subject per analysis parameter (per timepoint, as needed). Because it is a flexible structure, it allows most analyses to be performed. Additionally, the vertical structure provides traceability back to predecessor datasets, such as SDTM.

BDS datasets can contain

Observed, derived and imputed data Data from SDTM and/or other ADaM datasets Data copied from ADSL Analysis timing variables Analysis parameters Analysis indicators Covariates and sub-setting flags Data point traceability

BDS COLUMNS VS. ROWS

The ADaM IG section 4.2 describes a set of rules for when we are to create columns vs. rows in a BDS structured dataset:

Rule 1. A parameter-invariant function of AVAL and BASE on the same row that does not involve a transform of BASE should be added as a new column.

Rule 2. A transformation of AVAL that does not meet the conditions of Rule 1 should be added as a new parameter, and AVAL should contain the transformed value

Hands-on WorkshopsSAS Global Forum 2013

Page 4: 137-2013: Adding New Rows in the ADaM Basic Data Structure

4

Rule 3. A function of one or more rows within the same parameter for the purpose of creating an analysis timepoint should be added as a new row for the same parameter.

Rule 4. A function of multiple rows within a parameter should be added as a new parameter.

Rule 5. A function of more than one parameter should be added as a new parameter

Rule 6. When there is more than one definition of baseline, each additional definition of baseline requires the creation of its own set of rows.

EXAMPLE 1

Consider the following SDTM (partial) data set.

STUDYID DOMAIN USUBJID VSTESTCD VISIT VSSTRESN VSSTRESU

BP3304 VS BP3304-A01 DIABP Screening 80 mmHg

BP3304 VS BP3304-A01 DIABP Visit 1 79 mmHg

BP3304 VS BP3304-A01 DIABP Visit 1 78 mmHg

BP3304 VS BP3304-A01 DIABP Visit 1 79 mmHg

BP3304 VS BP3304-A01 DIABP visits XX mmHg

BP3304 VS BP3304-A01 DIABP Follow-Up 110 mmHg

And imagine we already have constructed ADSL (partial view). Appendix I contains then variable metadata corresponding to the ADaM variables used in the examples.

USUBJID MITTFL ARMCD TRT01P TRTSDT TRTEDT HYPDUR HYPDURC

BP3304-A01 Y A 100 MG BP3304 6/30/2009 1/11/2010 11.76 > 10 years

Suppose that change from baseline analysis is required as specified in the following mock table.

14.2.1.1 Diastolic Blood Pressure

Modified Intent-to-Treat Population

BP3304 (N = xx) Placebo (N = xx)

Observed Change from

Baseline

Observed Change from

Baseline

Baseline

N

Mean (SD)

Median

Min, Max

XX

XXX.XX (XX.XXX)

XXX.XX

XXX.XX, XXX.XX

XX

XXX.XX (XX.XXX)

XXX.XX

XXX.XX, XXX.XX

Week 4

N

Mean (SD)

Median

Min, Max

LS Mean (SE)

95% CI for LS Mean

p-value

95% CI for LS Mean

Difference

XX

XXX.XX (XX.XXX)

XXX.XX

XXX.XX, XXX.XX

XX

XXX.XX (XX.XXX)

XXX.XX

XXX.XX, XXX.XX

XX.X (XX.XXX)

(XX.X, XX.X)

XX

XXX.XX (XX.XXX)

XXX.XX

XXX.XX, XXX.XX

XX

XXX.XX (XX.XXX)

XXX.XX

XXX.XX, XXX.XX

XX.X (XX.XXX)

(XX.X, XX.X)

X.XXXX

(XX.X, XX.X)

Reference: Listing 16.2.6.2

Note: Baseline is defined as the last value collected before the first dose of study drug.

Least squares means, standard errors, and confidence intervals come from a last observation

carried forward (LOCF) analysis using an analysis of covariance (ANCOVA) model with fixed

effects for treatment and baseline therapy strata and a covariate for baseline blood

pressure. SD = Standard Deviation, Min = Minimum, Max = Maximum LS = Least Squares, SE =

Standard Error, CI = Confidence Interval.

Hands-on WorkshopsSAS Global Forum 2013

Page 5: 137-2013: Adding New Rows in the ADaM Basic Data Structure

5

A partial view of the ADVS ADaM dataset to perform this analysis could look like:

USUBJID MITTFL AVISIT PARAMCD AVAL BASE CHG DTYPE

1 BP3304-A01 Y Pre DBP 79

2 BP3304-A01 Y Pre DBP 78

3 BP3304-A01 Y Pre DBP 79

4 BP3304-A01 Y Baseline DBP 78.667 78.667 0 AVERAGE

5 BP3304-A01 Y Week 4 DBP 76 78.667 -2.667

6 BP3304-A01 Y Follow-Up DBP 110 78.667 31.333

7 BP3304-A01 Y End of Study DBP 110 78.667 31.333 LOCF

Notice the application of two of the rules:

Column CHG, the change of baseline, applies rule 1 Baseline computation (average of 3 records) and for End of Study (LOCF) analyses applies rule 3

EXAMPLE 2

Now suppose the required analysis is a bit different.

14.2.5.1 Time to Achievement of Diastolic Blood Pressure ≤ 90 mmHg

Modified Intent-to-Treat Population

BP3304

(N=xx)

Placebo

(N=xx)

n (%) n (%)

N

No. with DBP ≤ 90 mmHg

No. of Censored

Time to DBP ≤ 90 mmHg (Weeks)

Median

95% CI of Median

25-75%ile

Min, Max

XX

XX (XX.X)

XX (XX.X)

XX.XX

(XX.XX, XX.XX)

XX.XX – XX.XX

XX.X, XX.X+

XX

XX (XX.X)

XX (XX.X)

XX.XX

(XX.XX, XX.XX)

XX.XX – XX.XX

XX.X, XX.X+

Reference: Listing 16.2.6.2

Note: Time to diastolic blood pressure ≤ 90 mmHg is calculated using Kaplan-Meier methods. 95%

CI for median is computed using Brookmeyer and Crowley’s method.

+ = censored value, C.I. = Confidence interval, DBP = diastolic blood pressure.

USUBJID ADT ABLFL ANL01FL ASEQ

1 BP3304-A01 6/30/2009

N 1

2 BP3304-A01 6/30/2009

N 2

3 BP3304-A01 6/30/2009

N 3

4 BP3304-A01 6/30/2009 Y Y 4

5 BP3304-A01 7/28/2009

Y 5

6 BP3304-A01 12/15/2009

Y 6

7 BP3304-A01 12/15/2009

Y 7

Hands-on WorkshopsSAS Global Forum 2013

Page 6: 137-2013: Adding New Rows in the ADaM Basic Data Structure

6

The corresponding ADaM data set may look like: USUBJID TRTP ADT PARAM PARAMCD AVAL STARTDT

1 BP3304-A01 100 MG BP3304 7/28/2009 First DBP < 90 mmHg DBP90 4.14 6/30/2009

2 BP3304-A01 100 MG BP3304 12/15/2009 Last DBP Collected LASTDBP 24.14 6/30/2009

3 BP3304-A01 100 MG BP3304 7/28/2009 Weeks to DBP<=90 TTE 4.14

USUBJID MITTFL CNSR EVNTDESC DTYPE SRCDOM SRCVAR

SRCSEQ

1 BP3304-A01 Y DBP <=90 reached ADVS ADT 5

2 BP3304-A01 Y Censored at last DBP ADVS ADT 6

3 BP3304-A01 Y 0 DBP <=90 reached TTE

In this case all patients have a last DBP assessment, in other words, a record for parameter LASTDBP. Those who have reached DBP < 90 will also have parameter DBP90 populated with the earliest occurrence. The TTE row is computed using rule 5: selecting the time of parameter DBP90 if available (this constitutes an event), or selecting the parameter LASTDBP (this constitutes a censored observation). The actual analysis is done using the parameter code TTE.

CONCLUSION

The rules listed in ADaMIG section 4.2 and repeated here in this paper help us make the determination of when to add rows and when to add columns. Because much of the time we need to create new rows, we can use variables such as DTYPE to provide information about how each row was derived. For those used to working with a more horizontal dataset and adding columns, it can be a little intimidating to instead have to add rows. The rules and examples in section 4 of the ADaMIG, the examples in this paper, and the exercises in the Hands-On Workshop corresponding to this paper can all be of help when adding rows.

REFERENCES

Study Data Tabulation Model, Version 1.2 Final. Published by CDISC November 12, 2008. Available for download at http://www.cdisc.org.

Study Data Tabulation Model Implementation Guide: Human Clinical Trials. Published by CDISC November 12, 2008. Available for download at http://www.cdisc.org.

Analysis Data Model (ADaM) Implementation Guide, Version 1.0 Final. Published by CDISC on December 17, 2009. Available for download at http://www.cdisc.org/stuff/contentmgr/files/0/854651256c2654c94b03e6da1be6e145/misc/adam_implementation_guide_v1.0.pdf.

Analysis Data Model (ADaM), Version 2.1 Final. Published by CDISC December 17, 2009. Available for download at http://www.cdisc.org/stuff/contentmgr/files/0/854651256c2654c94b03e6da1be6e145/misc/analysis_data_model_v2.1.pdf.

Analysis Data Model (ADaM), Data Structure for Adverse Event Analysis, Version 1.0 Final. Published by CDISC on May 10, 2012. Available for download athttp://www.cdisc.org/stuff/contentmgr/files/0/5aee16f59e8d6bd2083dbb5c1639f224/misc/adam_ae_final_v1.pdf.

ACKNOWLEDGMENTS

The authors would like to thank the CDISC organization, including the ADaM team, and our companies.

Hands-on WorkshopsSAS Global Forum 2013

Page 7: 137-2013: Adding New Rows in the ADaM Basic Data Structure

7

CONTACT INFORMATION

Your comments and questions are valued and encouraged. Contact the authors at:

Mario Widel Roche Molecular Systems 4300 Hacienda Drive Pleasanton CA, 94588 U.S.A. [email protected]

Sandra Minjoe Octagon Research Solutions, now a part of Accenture 585 East Swedesford Road Wayne, PA 19087 U.S.A [email protected]

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.

Hands-on WorkshopsSAS Global Forum 2013

Page 8: 137-2013: Adding New Rows in the ADaM Basic Data Structure

8

APPENDIX I – ADAM METADATA

Variable Name Variable Label Variable

Type Display Format

Codelist / Controlled

Terms Source / Derivation

ADSL STUDYID Study Identifier char DM.STUDYID

ADSL USUBJID Unique Subject Identifier char DM.USUBJID

ADSL SUBJID Subject Identifier for the Study char DM.SUBJID

ADSL SITEID Study Site Identifier char DM.SITEID

ADSL COUNTRY Country char DM.COUNTRY

ADSL AGE Age num DM.AGE

ADSL AGEU Age Units char (AGEU) DM.AGEU

ADSL AGEGR1 Age Group 1 char Set to 'Y' if age > 65

ADSL SEX Sex char (SEX) DM.SEX

ADSL ETHNIC Ethnicity char (ETHNIC) DM. ETHNIC

ADSL RACE Race char (RACE) DM.RACE

ADSL ENRLFL Enrolled Population Flag Char Y,N Has signed informed consent (Subject has a record where DSDECOD = 'INFORMED CONSENT OBTAINED')

ADSL RANDFL Randomized Population Flag Char Y,N Has been randomized (Subject has a record where DSDECOD='RANDOMIZED')

ADSL SAFFL Safety Population Flag char Y,N Set to 'Y' if patient had at least one dose of Study medication: (At least one record with EX.EXDOSTOT >. then 'Y'; else 'N'.)

ADSL PPROTFL Per-Protocol Population Flag char Y,N Set to 'Y' if patient had at least 112 doses (80% of planned) of study medication, 'N' otherwise. If count of occurrences of EX.EXDOSTOT > 0 is at least112 then 'Y'; else 'N'.

ADSL MITTFL Modified Intent-To-Treat Population Flag

char Y,N Set to 'Y' if patient is in the safety population and had baseline and at least one post-baseline diastolic pressure measurement. For non-missing VS.VSORRES where VS.TESTCD='DIABP' patient has VSBLFL='Y' and another record with VS.VSDTC > TRTSTDT

ADSL COMPTRFL Completer Treatment Flag char Y,N Set to 'Y' if DS.EPOCH='TREATMENT PHASE' and DS.DSDECOD='COMPLETED'; else set to 'N'

ADSL COMPFUFL Completer Follow-up Flag char Y,N Set to 'Y' if DS.EPOCH='FOLLOW-UP' and DS.DSDECOD='COMPLETED'; else set to 'N'

ADSL ARMCD Planned Arm Code char A,B DM.ARM

Hands-on WorkshopsSAS Global Forum 2013

Page 9: 137-2013: Adding New Rows in the ADaM Basic Data Structure

9

Variable Name Variable Label Variable

Type Display Format

Codelist / Controlled

Terms Source / Derivation

ADSL ARM Description of Planned Arm char A,B DM.ARM

ADSL TRT01P Planned Treatment for Period 1 char 100 MG BP3304, PLACEBO

Set to ARM

ADSL TRT01PN Planned Treatment for Period 1 (N) num 1,2 Set to 1 if TRT01P='100 MG BP3304', set to 2 if TRT01P='PLACEBO'

ADSL RANDDT Date of Randomization num DATE9. INPUT(DS.DSDTC, YYMMDD10.) where DS.DSDECOD='RANDOMIZED'

ADSL TRTSDT Date of First Exposure to Treatment num DATE9. Set to the numeric version of smallest non-missing EX.EXSTDTC when EXDOSTOT>0.

ADSL TRTSDTF Date of First Exposure Imput. Flag char M, D,Y No imputation. Always blank

ADSL TRTEDT Date of Last Exposure to Treatment num DATE9. Set to the datepart of numeric version of largest non-missing EX.EXENDTC when EXDOSTOT>0. Imputation rules?.

ADSL TRTEDTF Date of Last Exposure Imput. Flag char M, D,Y No imputation. Always blank

ADSL HEIGHT Height (cm) num Set to VS.VSSTRESN where VS.VSBLFL='Y' and VS.VSTEST="HEIGHT"

ADSL WEIGHT Weight (kg) num Set to VS.VSSTRESN where VS.VSBLFL='Y' and VS.VSTEST="WEIGHT"

ADSL BMI Body mass index num Set to WEIGHT / [(HEIGHT/100)**2]

ADSL NMITBS Not Baseline DIABP char Set to 'Y' when there is No Baseline DIABP

ADSL NMITPBS Not Post-Baseline DIABP char Set to 'Y' when there is No Post-Baseline DIABP

ADSL NMITSAF Not in Safety Population char Set to 'Y' when SAFFL ne 'Y' .

ADSL NPPRMIT Not in MITT Population char Set to 'Y' when MITTFL is not 'Y'

ADSL NPPRDOS Received <80% of Sched Doses char Set to 'Y' when number of doses is < 112. Count number of days under exposure as then sum of all EX.EXSTDTC to EXENDTC per subject.

ADSL NPPRVIOL Mayor Protocol Violation char Set to 'Y' when DS.DSCAT='DISPOSITION EVENT' and DS.DSDECOD ='PROTOCOL VIOLATION' while DS.EPOCH='Treatment'

ADSL DISCREAS Reason for discontinuation char Set to DS.DSDECOD when DS.DSCAT='DISPOSITION EVENT'

ADSL NRNDREAS Reason for not Randomized char Set to DS.DSDECOD when DS.DSCAT='DISPOSITION EVENT' and the subject does not have any record where DS.DSDECOD='RANDOMIZED'

ADSL BLTHSTR Baseline Therapy Strata num 1,2 When SC.SCTESTCD='STRATUM' then set to 1 if SC.SCSTRESC='STRATUM 1'; Set to 2 if SC.SCSTRESC='STRATUM 2'

ADSL ALCHIST Alcohol History char Set to SC.SCSTRESC when SC.SCTESTCD='ALCOHOL'.

ADSL TOBHIST Tobacco History char Set to SC.SCSTRESC when SC.SCTESTCD='TOBACCO'.

Hands-on WorkshopsSAS Global Forum 2013

Page 10: 137-2013: Adding New Rows in the ADaM Basic Data Structure

10

Variable Name Variable Label Variable

Type Display Format

Codelist / Controlled

Terms Source / Derivation

ADSL HYPDUR Duration of Hypertension (years) char Set to the numeric value of the duration from SC.SCSTRESC when SC.SCTESTCD = 'HYPERTENSIVE' and DS.DSSTDTC when DS.DSDECOD = 'INFORMED CONSENT OBTAINED'

ADSL HYPDURC Duration of Hypertension Category char Set to '<10 years' if HYPDUR <= 10, set to '>10 years' if HYPDUR >10

ADVS

ADVS STUDYID Study ID Text $8. VS.STUDYID

ADVS USUBJID Unique Subject Identifier Text $15. VS.USUBJID

ADVS SITEID Study Site Identifier Text $10. VS.SITEID

ADVS TRTP Planned Treatment Text $15. 100 MG BP3304, PLACEBO

If VS.VSSTDTC is between ADSL.TRTSDT and ADSL.TRTEDT then assign to ADSL.TRT01P, else missing.

ADVS TRTPN Planned Treatment (N) Integer 1.0 1, 2 Set to 2 if TRTP='PLACEBO'; set to 1 if TRTP='100 MG BP3304'

ADVS MITTFL Modified Intent-To-Treat Population Flag

Text $1. Y,N ADSL.MITTFL

ADVS ADT Date of VItals Result Integer DATE9. Set to numeric version of VS.VSDTC when AVISIT comes from VS.VISIT; when AVISIT='END OF STUDY', set to the date of the last visit with a non-missing AVAL for PARAM

ADVS ADY Relative Day of VItals Result Integer 4.0 ADT - TRTSDT + 1

ADVS AVISIT Analysis Visit Text $15. Baseline, WEEK 4, WEEK 8, WEEK 12, WEEK 16, WEEK 20, WEEK 24, End of Study

Map based on visit windows in Section 3 of SAP using ADY. Set to 'Baseline' and 'End of Study' for corresponding added visit as described in parameter-level metadata

ADVS AVISITN Analysis Timepoint Number

Integer 1.0 1, 2, 3, 4, 5, 6, 7, 8

1=Baseline, 2=Week 4, 3=Week 8, 4=Week 12, 5=Week 16, 6=Week 20, 7=Week 24, 8=End of Study

ADVS PARAM Parameter Description Text $40. Derive by concatenating VS.VSTEST, VS.VSSTRESU for the VS.VSTEST in ('SYSBP' 'DIABP').

ADVS PARAMCD Parameter Code Text $8. VS.VSTESTCD for the VS.VSTEST in ('SYSBP' 'DIABP').

ADVS AVAL Analysis Value Float Set to VS.VSSTRESN

Hands-on WorkshopsSAS Global Forum 2013

Page 11: 137-2013: Adding New Rows in the ADaM Basic Data Structure

11

Variable Name Variable Label Variable

Type Display Format

Codelist / Controlled

Terms Source / Derivation

ADVS BASE Baseline Value Float For numeric tests only: AVAL where ABLFL='Y'

ADVS CHG Change from Baseline

Float For numeric tests: AVAL-BASE

ADVS CRIT1 Analysis Criterion 1 Text 20 See parameter-level metadata.

ADVS CRIT1FL Criterion 1 Evaluation Result Flag Text $1. Y See parameter-level metadata.

ADVS DTYPE Derivation Type Text $10. LOCF, missing Blank for records coming from SDTM. Set to 'LOCF' for LOCF values, as described in the parameter-level metadata.

ADVS ABLFL Baseline Record Flag Text $1. Y,N Set to 'Y' for last row with non-missing AVAL prior to TRTSTDT

ADVS ANL01FL Analyzed Record Flag 1 Text $1. Y,N Set to 'Y' for post-baseline rows with a non-missing AVAL

ADVS ONTRTFL On Treatment Record Flag Text $1. Y,N If VS.VSDTC is between TRTSDT and TRTEDT then set to 'Y', otherwise missing

ADVS ONTRTFN On Treatment Numeric Indicator Integer 1.0 0,1 Set to 1 when ONTRTFL is 'Y'; set to 0 when ONTRTFL is either 'N' or missing

ADVS BLTHSTR Baseline Therapy Strata Integer 1.0 1, 2 ADSL.BLTHSTR

ADVS VSSEQ Sequence Number Num VS.VSSEQ

ADVS ASEQ Analysis Sequence Number Num Add sequence number starting at 1 for each new subject

ADVST

ADVST STUDYID Study ID Text $8. ADVS.STUDYID

ADVST USUBJID Unique Subject Identifier Text $15. ADVS.USUBJID

ADVST SITEID Study Site Identifier Text $10. ADVS.SITEID

ADVST TRTP Planned Treatment Text $15. 100 MG BP3304, PLACEBO

ADVS.TRTP

ADVST TRTPN Planned Treatment (N) Integer 1.0 1, 2 ADVS.TRTPN

ADVST MITTFL Modified Intent-To-Treat Population Flag

Text $1. Y,N ADVS.MITTFL

ADVST PPROTFL Per-Protocol Population Flag char Y,N ADSL.PPROTFL

ADVST PARAM Parameter Description Text $40. See SAP and parameter-level metadata for numeric and categorical definitions

ADVST PARAMCD Parameter Code Text $8. See SAP and parameter-level metadata for numeric and categorical definitions

ADVST AVAL Analysis Value Float (ADT - STARTDT + 1 )/7

Hands-on WorkshopsSAS Global Forum 2013

Page 12: 137-2013: Adding New Rows in the ADaM Basic Data Structure

12

Variable Name Variable Label Variable

Type Display Format

Codelist / Controlled

Terms Source / Derivation

ADVST STARTDT Time to Event Origin/Date Integer DATE9. ADVS.RANDDT

ADVST ADT Analysis Date Integer DATE9. ADVS.ADT

ADVST CNSR Censoring Indicator Integer 1.0 0,1 See SAP and parameter-level metadata for numeric and categorical definitions

ADVST EVNTDESC Event or Censoring Description Text See SAP and parameter-level metadata for numeric and categorical definitions

ADVST CRIT1 Analysis Criterion 1 Text 20 ADVS.CRIT1

ADVST CRIT1FL Criterion 1 Evaluation Result Flag Text $1. Y ADVS.CRIT1FL

ADVST PARAMTYP Parameter Type Text $10. DERIVED, missing

See parameter-level metadata.

ADVST SRCDOM Source Domain Text $8. ADVS Set to 'ADVS'

ADVST SRCVAR Source Variable Text $8. ADT Set to 'ADT'

ADVST SRCSEQ Source Sequence Number Integer ASEQ Set to ADVS.ASEQ

Hands-on WorkshopsSAS Global Forum 2013