Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The SDTM example datasets from which this data is drawn are in the section "Basic CMR tests -Systolic Function" (make link) . The example datasets show visits 1 and 6 for one subject. As mentioned in the SDTM text, for the purposes of this example, the participant was enrolled in the study on 20-May-2021 and the study visits were every two months. Visit 1 represents the visit at day 1 of the study, and visit 6 represents the visit at month 12 of the study. The associated laboratory test, N-Terminal ProB-type Natriuretic Peptide, is used in conjunction with ejection fraction as a biomarker and is important for diagnosis and treatment. It is also used separately to identify the percent change over a period of time.

The analysis dataset also dataset  includes treatment and demographic information drawn from the ADSL. In this example, we only show some of the required variables plus important stratification variables from ADSL. One variable mentioned body surface area (BSA), can be computed and added to ADSL. However, since the subjects are children their body surface area changes over time. Therefore it would probably be better to have a separate dataset to capture this over time. In this example, we will show one variable for BSA with the label variable "BASELINE Baseline Body Surface Area (m2)" which can be added to ADSL.


Questions. 

Is screening considered visit 1, or is it to include the subject into the study? SDTM team agreed to change to VISIT 1 instead of SCREENING.

...

Should both endpoints be shown in one efficacy dataset or two?  I will be showing 3 datasets.

bWhat What is a good surface area to use for the child subject?

...

Below is the table of analysis datasets and unique parameters created for the example. The ADSL is required as part of the process of creating the subsequent analysis datasets.

The ADSL includes demographics, treatment groups, study dates and stratification variables. For this example, the ADSL is not shown other than as a source for standard ADaM variables. See Section 2.3.1 of the ADaMIG v1.3 for additional information.

ADCVEF is a dataset capturing only the tests required for this analysis, selecting for CVTESTCD equal to "LVEF_C" or "LVCORVEF_C".  The relationship dataset RELREC shows the datset relationships. There is merged in with ADCVEF in preprarion to add the tests from LB to the efficacy dataseta many to one relationship between the tests from CV and the laboratory data collected at the same visits. Therefore by subsetting the LB with LBLNKID not missing, this selects the laboratory data that can be merged with CV by USUBJID and VISIT  (or USUBJID and AVISIT in ADaM)  In ADaM analysis datasets we can also use a windowing strategy to select the laboratory draw closest to that visit to merge with CV which is computed in AVISIT in which case all LB records would be kept for the tests of interest.

ADLBNTRP is a subset of LB selecting for LBTESTCD  equal to "BNPPRONT", and LBLINKID not missing. In this case, many lab draws may occur throughout the year, but we are only interested in the ones linked to a specific visit.

...

Definexmltable
Multipletrue
LevelDataset
PurposeAnalysis

Dataset Name

Dataset Description

Class of Dataset

Structure

Location

Keys

Documentation

ADSL

Subject-Level Analysis Dataset

SUBJECT LEVEL ANALYSIS DATASETadsl.xptOne record per subjectUSUBJIDADaMIG v1.3 section 3.1.1
ADCVEFADCEFCardiac Ejection Fraction Analysis Dataset

BASIC DATA STRUCTURE

One record per subject per analysis visit per parameter.adcvef.xptUSUBJID, AVISITN, PARAMCD

 Analysis Dataset

ADLBNTRPCardiac NTproBNP Laboratory Analysis Dataset

BASIC DATA STRUCTURE

One record per subject per analysis visit per parameter.adntpro.xptUSUBJID, AVISITN, PARAMCD

 Analysis Dataset

ADCMRICardiac Magnetic Resonance Imaging Measurements Analysis Dataset

BASIC DATA STRUCTURE

One record per subject per analysis visit per parameter.adcmri.xptUSUBJID, AVISITN, PARAMCD

Analysis Dataset

Definexmltable
Multipletrue
DatasetADCEF, ADLBNTRP
LevelValue
PurposeAnalysis
OIDAVAL
DatasetVariableWhereTypeOriginDerivation/Comment
ADCEFAVALPARAMCD = " LVEFC"NumPredecessor Set to CV. CVSTRESN where CV.CVTESTCD ="LVEFCLVEF_C".
ADCEFAVALPARAMCD = "RVEFC"NumPredecessor Set to CV. CVSTRESN where CV.CVTESTCD ="LVEFCRVEF_C". 
ADLBNTRPAVALPARAMCD = "BNPPRONT"NumPredecessorSet to LB.LBSTRESN where LB.LBTESTCD = "BNPPRONT"

...

Definexmltable
DatasetADCV
LevelVariable
PurposeAnalysis
NameVariable
Variable NameVariable LabelTypeCodelist/Controlled Terms/FormatSourceDerivation/Comment
STUDYIDStudy IdentifierChar

CV.STUDYID


USUBJIDUnique Subject IdentifierChar

CV.USUBJID

Select for records with RE data.
ASEQAnalysis Sequence NumberNum

CV.CVSEQ

Number records 1 to n after sorting by keys.
TRT01P

Planned Treatment for Period 01

Char"Treatment A"ADSL.TRT01PFor this example we are putting "Treatment A". In a Real World Evidence study this could be non-treatment related, e.g. "Group A".

COMPLFL

Completers Population Flag

Char

Y; N

ADSL.COMPLFL

Pick other population? for RWE this does not apply

AGEAgeNum
ADSL.AGE
AGEUAge UnitsChar(AGEU)ADSL.AGEU
SEXSexChar(SEX)ADSL.SEX
BSABASEBody Surface Area at Baseline (m2)Num
ADSL.BSABSECompute in ADSL where VS.VSTESTCD = "BSA".
PARAMParameterChar

Left Ventricular Ejection Fraction, Calculated (%)

Right Ventricular Ejection Fraction, Calculated (%)

N-Terminal ProB-type Natriuretic Peptide (pg/mL)



For tests from CV, set to the values of CV.CVTEST plus CV.CVTESTU with spaces and parentheses as shown.  

For tests from LB, set to the value of LB.LBTEST plus LB.LBTESTU with spaces and parentheses as shown. 

PARAMCDParameter CodeChar

LVEFC

RVEFC




If CV.CVTESTCD = "LVEF_C" then PARAMCD = "LVEFC"

If CV.CVTESTCD = "RVEF_C" then PARAMCD = "RVEFC".

If LB.LBTESTDC = "BNPPRONT" then PARAMCD = "BNPPRONT.

Note: for this example dataset, select the records where the test values shown above are included.

AVALAnalysis ValueNum


See Parameter Value List 

AVISITAnalysis VisitChar



If CV.VISIT = "VISIT 1" then AVISIT = "Visit 1 (Baseline)".

Else if CV.VISIT = "VISIT 6" then AVISIT = "Visit 6 (1 Year)".

AVISITNAnalysis Visit (N)Num1,  6
Set to value of CV.VISITNUM or LB.VISITVisitChar

CV.VISIT

VISITNUM
ADTAnalysis DateNumdate9.
Date portion of CV.CVDTC or LB.LBDTC converted to numeric and displayed in a format such as date9. 
ABLFLBaseline Record FlagCharY

If CV.VISIT = 1 then ABLFL = "Y".

BASEBaseline ValueNum

Set BASE to AVAL from the record for that subject and parameter where ABLFL = "Y".

Populate BASE for additional visit by merging by USUJID and ADT. (Or by AVISIT if ADT varies for labs, and windowing is applied to select record closest to the visit)

CHGChange from BaselineNum

Compute CHG = AVAL - BASE for that record. Only compute for post-baseline records.
PCHGPercent Change from BaselineNum

Compute PCHG = (CHG / BASE) * 100. Only compute for post-baseline records.
CHGCAT1Change from Baseline Category 1

>1.0 g/dL;

<=1.0 g/dL



SRCDOMSource DataChar

CV

LB


 Set to the SDTM domain name that relates to the analysis value.
SRCSEQSource Sequence NumberNum

CV.CVSEQ

LB.LBSEQ


Set to the SDTM domain sequence number that relates to the analysis value.

...