How to build ADaM BDS dataset from mock up table

17
How to Build ADaM Basic Data Structure from Mock Up tables By Kevin Lee Cytel, Inc. 1

Transcript of How to build ADaM BDS dataset from mock up table

Page 1: How to build ADaM BDS dataset from mock up table

How to Build ADaM Basic Data Structure from Mock Up tables

By Kevin Lee

Cytel, Inc.

1

Page 2: How to build ADaM BDS dataset from mock up table

Instruction of Basic Data Structure

BDS is the standard domain structure in ADaM. BDS is designed as one or more records per subject per analysis parameter per analysis time point. One of the main purposes of ADaM BDS is analysis-ready, meaning that all the numbers in the final report should be calculated with one procedure in SAS. The naming convention of BDS is ADxxxxxx.

2

Page 3: How to build ADaM BDS dataset from mock up table

BDS Structure

3

Subject Identifier VariablesTreatment VariablesTiming VariablesAnalysis Parameter VariablesAnalysis Descriptor VariablesIndicator VariablesAnalysis Enabling VariablesData Point Traceability VariablesSDTM Variables

Page 4: How to build ADaM BDS dataset from mock up table

Steps to create ADaM BDS from Mock Up tables

4

Design Mock Up Tables (typically created by Statistician) according to SAPAnnotate Mock Up TablesDesign Metadata according to Mock Up TablesCreate ADaM BDS data sets according to Metadata

Page 5: How to build ADaM BDS dataset from mock up table

Flowchart

5

SAP Mock Up tables

AnnotatedMock Up tablesMetadata

SDTM ADaM TFL

Page 6: How to build ADaM BDS dataset from mock up table

Mock Up table

Group 1:Treatment 1

(N=xxx)

Group 2:Placebo(N=xxx)

n Mean Observed

Value

n Mean Observed

ValueCreatine

Log of Creatine

6

Table 14.4.1Summary of table of Creatine at baseline

(Per Protocol Population)

Page 7: How to build ADaM BDS dataset from mock up table

Annotated Mock Up table

Group 1:Treatment 1

(N=xxx)ADLB.TRTAN = 1

Group 2:Placebo(N=xxx)

ADLB.TRTAN = 2n Mean

Observed Value

n Mean Observed

ValueCreatinewhere ADLB. PARAMCD=‘CREAT’

Count(ADLB.AVAL)

MEAN(ADLB.AVAL)

Count(ADLB.AVAL)

MEAN(ADLB.AVAL)

Log of Creatine where ADLB. PARAMCD=‘L10CREAT’

7

Table 14.4.1Summary of table of Creatine at baseline ADLB.AVISIT=‘BASELINE’

(Per Protocol Population) ADLB.PPROTFL=‘Y’

Page 8: How to build ADaM BDS dataset from mock up table

8

New Variables according to annotationProtocol population variable – PPROTFLBaseline – AVISIT, AVISITNTreatment variable – TRTAN, TRTAParameter Variable – PARAM, PARAMCDObserved Mean Value Variable – AVAL

New Parameters according to annotationCreatine – Its paramcd is “CREAT” and its analysis values, AVAL, come from LB.LBSTRESN. Log of Creatine – Its paramcd is “L10CREAT” and its analysis values, AVAL, come from log of LB.LBSTRESN.

Page 9: How to build ADaM BDS dataset from mock up table

Analysis Dataset Metadata

Dataset Name

Dataset Description

Dataset Location

Dataset Structure

Key variables of Dataset

Class of Dataset

Documentation

ADLB Laboratory analysis data

ADLB.xpt one record per subject per parameter per analysis timepoint

USUBJID, PARAM, AVISIT

BDS ADLB.SAS

9

Page 10: How to build ADaM BDS dataset from mock up table

Analysis Variable Metadata including Analysis Parameter Value-Level MetadataParameter Identifier

VariableName

Variable Label

Type Format Codelist/Controlled Term

Source/Derivation

Subject Identifier Variables

** ALL ** STUDYID Study Identifier

Char $12. ADSL.STUDYID

** ALL ** ADDOMAIN Analysis Domain

Char $8. ADLB Derived

** ALL ** USUBJID Unique Subject Identifier

Char $20. LB.USUBJID

** ALL ** SUBJID Subject Identifier for the Study

Char $8. ADSL.SUBJID

** ALL ** SITEID Study Site Identifier

Char $10. ADSL.SITEID

10

Page 11: How to build ADaM BDS dataset from mock up table

Parameter Identifier

VariableName

Variable Label

Type Format

Codelist/Controlled Term

Source/Derivation

Treatment Variables** ALL ** TRTA Actual

Treatment Group

Char $20. ADSL.TRTA

** ALL ** TRTAN Actual Treatment Number

Num 8. ADSL.TRTAN

Timing Variables

** ALL ** AVISIT Analysis Timepoint Description

Char $50. BASELINEVISIT 1

LB.VISIT

** ALL ** AVISITN Analysis Timepoint Number

Num 8. 0 = BASELINE1 = VISIT 1

LB.VISITNUM

11

Page 12: How to build ADaM BDS dataset from mock up table

Parameter Identifier

VariableName

Variable Label Type Format

Codelist/Controlled Term

Source/Derivation

Analysis Parameter Variables

CREAT PARAM Parameter Description

Char $100. Creatine(mg/dL)

LB.LBTESTCD + unit

L10CREAT PARAM Parameter Description

Char $100. Log of Creatine(mg/dL)

LB.LBTESTCD + unit

** ALL ** PARAMCD Parameter Code Char $8. CREATL10CREAT

LB.LBTESTCD

L10CREAT PARAMTYP Parameter Type Char $8. DERIVEDCREAT AVAL Analysis Value Num 8. LB.LBSTRESN

L10CREAT AVAL Analysis Value Num 8. Log10(LB.LBSTRESN)

12

Page 13: How to build ADaM BDS dataset from mock up table

Parameter Identifier

VariableName

Variable Label Type Format

Codelist/Controlled Term

Source/Derivation

Indicator Variables** ALL ** PPROTFL Per Protocol

Population FlagChar $1. ADSL.PPROT

FL

** ALL ** ABLFL Baseline Flag Char $1. ‘Y’ at ADLB.AVISIT=‘BASELINE’

Supportive Variables** ALL ** SRCDOM Source Domain Char $8. LB

** ALL ** SRCVAR Source Variable Char $8. LBSTRESN

** ALL ** SRCSEQ Source Sequence Number

Num 8. LB.LBSEQ

13

Page 14: How to build ADaM BDS dataset from mock up table

Other Possible VariablesAnalysis Parameter Variables - BASE, CHGAnalysis Descriptor variables – DTYPECategorical variables - CRIT1 and CRIT1FLIndicator variables - ANL1FL

14

Sample codes using ADaM data setproc sql;

**** The Count for and Mean value for Creatine and log of Creatine for protocol population at Baseline;create table line1_1 as

select trtan, paramcd, count(aval) as count, mean(aval) as meanfrom adlbwhere paramcd in (‘CREAT’, ‘L10CREAT’) and avisit = ‘BASELINE’

and pprotfl = ‘Y’ and aval is not missinggroup by trtan, paramcd;

quit;

Page 15: How to build ADaM BDS dataset from mock up table

Advantages using Annotated Mock Up tablesEasy to create the metadata

Analysis Dataset metadata Analysis Variable metadataAnalysis Parameter Value-level metadataAnalysis Results metadata

Easy to explain

Easy for SAS programmers to follow

More visual

More accurate number of ADaM data sets

15

Page 16: How to build ADaM BDS dataset from mock up table

ConclusionADaM is structured as analysis-ready. In order to build analysis-ready ADaM data sets, SAS programmers need to start from analysis, which are Mock Up tables. From Mock Up tables, SAS programmers figure out what procedures could be used for the analysis. Based on the procedure statements and analyses, SAS programmers annotate the Mock Up tables. The annotations on the Mock Up tables will help SAS programmers to find out what variables are needed in the analyses and eventually what variables and parameters should be created in ADaM data sets. SAS programmers now can create Metadata according to the annotations. According to Metadata, SAS programmers can create ADaM data sets from SDTM data sets. From ADaM data sets, SAS programmers will be able to produce all the results in the Mock Up tables using one proc procedure.

16

Page 17: How to build ADaM BDS dataset from mock up table

Contact Information

17

Kevin LeeCytel, Inc.Chesterbrook, PA(610) 994 - 9840Email:[email protected]