The Analysis dataset (ADaM) is created from the collected data stored in SDTM. It should have full traceability back to the input datasets. For this example we show the following endpoints:
- From CV domain
- Percent change in ejection fraction
- Decline in ejection fraction over a time period (yearly) grouped by a decline greater than x.x%.
- From the LB domain
- Percent change in NTproBNP over a period of time (yearly).
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 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 variable "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.
Are these Real World Evidence (RWE) studies only or clinical trials?
Should both endpoints be shown in one efficacy dataset or two? I will be showing 3 datasets.
What is a good surface area to use for the child subject?
Should i use Male and 6 years? please advise.
Analysis Datasets
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 "RVEF_C". The relationship dataset RELREC shows the datset relationships. There is a 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.
ADCMRI is an efficacy analysis dataset with only a few records for more complex modeling of changes in ejection fraction plus the ProB-type test results. It is a Basic Structure dataset with additional variables added from ADCVEF.
Analysis Datasets
Dataset Name | Dataset Description | Class of Dataset | Structure | Location | Keys | Documentation |
---|---|---|---|---|---|---|
ADSL | Subject-Level Analysis Dataset | SUBJECT LEVEL ANALYSIS DATASET | adsl.xpt | One record per subject | USUBJID | ADaMIG v1.3 section 3.1.1 |
ADCVNTRP | Cardiac Ejection Fraction and NTproBNP Analysis Dataset | BASIC DATA STRUCTURE | One record per subject per analysis visit per parameter. | adcvntrp.xpt | USUBJID, AVISITN, PARAMCD | Analysis Dataset |
ADCMRI | Cardiac Magnetic Resonance Imaging Measurements Analysis Dataset | BASIC DATA STRUCTURE | One record per subject per analysis visit per parameter. | adcmrief.xpt | USUBJID, AVISITN, PARAMCD | Analysis Dataset |
Parameter Value List - ADCVNTRP
Dataset | Variable | Where | Type | Origin | Derivation/Comment |
---|---|---|---|---|---|
ADCVNTRP | AVAL | PARAMCD = " LVEFC" | Num | Predecessor | Set to CV. CVSTRESN where CV.CVTESTCD ="LVEF_C". |
ADCVNTRP | AVAL | PARAMCD = "RVEFC" | Num | Predecessor | Set to CV. CVSTRESN where CV.CVTESTCD ="RVEF_C". |
ADCVNTRP | AVAL | PARAMCD = "BNPPRONT" | Num | Predecessor | Set to LB.LBSTRESN where LB.LBTESTCD = "BNPPRONT" |
ADCMRI |
Analysis Datasets
The following are the data structures for the example ADaM datasets. Note that the columns for derived variables, BASE, and CHG, PCHG and CHGCAT1 have been added for the efficacy analysis of endpoints. The example demographics for ADSL were created for an 8 year old male child. The ADaM standard only suggests variable order, so the demographics and treatment variables have been put at the end, so that the variables of interest are shown at the beginning of the dataset. Since we are combining two SDTM domains into one analysis dataset, some variables unique to LB will be blank for records from CV.
ADCV Variable Metadata
Variable Name | Variable Label | Type | Codelist/Controlled Terms/Format | Source | Derivation/Comment |
---|---|---|---|---|---|
STUDYID | Study Identifier | Char | CV.STUDYID | ||
USUBJID | Unique Subject Identifier | Char | CV.USUBJID | Select for records with RE data. | |
ASEQ | Analysis Sequence Number | Num | CV.CVSEQ | Number records 1 to n after sorting by keys. | |
BSABASE | Body Surface Area (m2) at Baseline | Num | ADSL.BSABSE | Compute in ADSL where VS.VSTESTCD = "BSA". | |
PARAM | Parameter | Char | 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. | |
PARAMCD | Parameter Code | Char | LVEFC RVEFC BNPPRONT | 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. | |
AVAL | Analysis Value | Num | See Parameter Value List | ||
AVISIT | Analysis Visit | Char | If CV.VISIT = "VISIT 1" then AVISIT = "Visit 1 (Baseline)". Else if CV.VISIT = "VISIT 6" then AVISIT = "Visit 6 (1 Year)". | ||
AVISITN | Analysis Visit (N) | Num | Set to value of CV.VISITNUM or LB.VISITNUM | ||
VISIT | Visit | Num | CV.VISIT LB.VISIT | ||
ADT | Analysis Date | Num | date9. | Date portion of CV.CVDTC or LB.LBDTC converted to numeric and displayed in a format such as date9. | |
ABLFL | Baseline Record Flag | Char | Y | If CV.VISIT = 1 then ABLFL = "Y". | |
BASE | Baseline Value | Num | Set BASE to AVAL from the record for that subject and parameter where ABLFL = "Y". Populate BASE for additional visits by merging by USUBJID and ADT. (Or by AVISIT if ADT varies for labs, and windowing is applied to select record closest to the visit) | ||
CHG | Change from Baseline | Num | Compute CHG = AVAL - BASE for that record. Only compute for post-baseline records. | ||
PCHG | Percent Change from Baseline | Num | Compute PCHG = (CHG / BASE) * 100. Only compute for post-baseline records. | ||
CHGCAT1 | Change from Baseline Category 1 | >1.0 g/dL; <=1.0 g/dL | |||
LBSTRNRLO | Reference Range Lower Limit-Std Units | LB.LBSTRNRLO | |||
LBSTRNHI | Reference Range Upper Limit-Std Units | LB.LBSTRNHI | |||
LBNRIND | Reference Range Indicator | (NRIND) | LB.LBNRIND | ||
TRT01P | Planned Treatment for Period 01 | Char | "Treatment A" | ADSL.TRT01P | For this example we are using "Treatment A". In a Real World Evidence study this could be non-treatment related, e.g. "Group A". |
ITTFL | Intent-to-Treat Population Flag | Char | Y; N | ADSL.ITTFL | Pick other population? POSSIBLE RWE STUDY |
AGE | Age | Num | ADSL.AGE | ||
AGEU | Age Units | Char | (AGEU) | ADSL.AGEU | |
SEX | Sex | Char | (SEX) | ADSL.SEX | |
SRCDOM | Source Data | Char | CV; LB | Set to the SDTM domain name that relates to the analysis value. | |
SRCSEQ | Source Sequence Number | Num | CV.CVSEQ LB.LBSEQ | Set to the SDTM domain sequence number that relates to the analysis value. |
Example 1
This example dataset shows the findings and additional analysis variables associated with :
- Left Ventricular Ejection Fraction, Calculated (%)
- Right Ventricular Ejection Fraction, Calculated (%)
- N-Terminal ProB-type Natriuretic Peptide (pg/mL)
Dataset Wrapper Debug Message
Row captions have been provided, but there doesn't seem to be a dataset to which the row captions would apply.
Rows 1-4: | Show the baseline CMR ejection fraction measurements for participant 101 at VISIT 1. |
---|---|
Row 5: | Shows the baseline NTProbTest for participant 101 at VISIT 1. |
Rows 6-9: | ShowS the CMR ejection fraction measurements for participant 101 at VISIT 6. |
Row 10: | Shows the NTProbTest for participant 101 at VISIT 6. |
Row Captions Debug Message
Remember to keep number agreement between labels and captions.
Unable to render dataset table
Please place only one table inside the macro.
STUDYID | USUBJID | ASEQ | BSABASE | PARAM | PARAMCD | AVAL | AVISIT | AVISITN | VISIT | ADT | ABLFL | BASE | CHG | PCHG | CHGCAT1 | LBSTRNRLO | LBSTRNHI | LBNRIND | TRT01P | ITTFL | AGE | AGEU | SEX | SRCDOM | SRCSEQ |
DMD-EFLGE | DMD-EFLGE-101 | 1 | 0.65 | Left Ventricular Ejection Fraction, Calculated (%) | LVEFC | 67 | Visit 1 (Month 1) | 1 | VISIT 1 | 16May2022 | Y | 67 | Treatment A | Y | 8 | YEARS | M | CV | 3 | ||||||
DMD-EFLGE | DMD-EFLGE-101 | 2 | 0.65 | Right Ventricular Ejection Fraction, Calculated (%) | RVEFC | 74 | Visit 1 (Month 1) | 1 | VISIT 1 | 16May2022 | Y | 74 | Treatment A | Y | 8 | YEARS | M | CV | 7 | ||||||
DMD-EFLGE | DMD-EFLGE-101 | 3 | 0.65 | N-Terminal ProB-type Natriuretic Peptide (IU/L) | BNPPRONT | 40 | Visit 1 (Baseline) | 1 | VISIT 1 | 16May2022 | Y | 40 | 100 | 40 | NORMAL | Treatment A | Y | 8 | YEARS | M | LB | 1 | |||
DMD-EFLGE | DMD-EFLGE-101 | 4 | 0.65 | Left Ventricular Ejection Fraction, Calculated (%) | LVEFC | 60 | Visit 6 (Month 12) | 6 | VISIT 6 | 01Jun2023 | 67 | -7 | -10.447761 | Treatment A | Y | 8 | YEARS | M | CV | 11 | |||||
DMD-EFLGE | DMD-EFLGE-101 | 5 | 0.65 | Right Ventricular Ejection Fraction, Calculated (%) | RVEFC | 61 | Visit 6 (Month 12) | 6 | VISIT 6 | 01Jun2023 | 74 | -13 | -17.567568 | Treatment A | Y | 8 | YEARS | M | CV | 10 | |||||
DMD-EFLGE | DMD-EFLGE-101 | 6 | 0.65 | N-Terminal ProB-type Natriuretic Peptide (IU/L) | BNPPRONT | 900 | Visit 6 (1 Year) | 6 | VISIT 1 | 1Jun2023 | 40 | 860 | 2150 | 100 | 900 | HIGH | Treatment A | Y | 8 | YEARS | M | LB | 11.8 |
Row | STUDYID | USUBJID | ASEQ | BSABASE | PARAM | PARAMCD | AVAL | AVISIT | AVISITN | VISIT | ADT | ABLFL | BASE | CHG | PCHG | CHGCAT1 | LBSTRNRLO | LBSTRNRHI | LBNRIND | TRT01P | ITTFL | AGE | AGEU | SEX | SRCDOM | SRCSEQ |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | DMD-EFLGE | DMD-EFLGE-101 | 1 | 0.65 | Left Ventricular Ejection Fraction, Calculated (%) | LVEFC | 67 | Visit 1 (Month 1) | 1 | VISIT 1 | 16May2022 | Y | 67 | Treatment A | Y | 8 | YEARS | M | CV | 3 | ||||||
2 | DMD-EFLGE | DMD-EFLGE-101 | 2 | 0.65 | Right Ventricular Ejection Fraction, Calculated (%) | RVEFC | 74 | Visit 1 (Month 1) | 1 | VISIT 1 | 16May2022 | Y | 74 | Treatment A | Y | 8 | YEARS | M | CV | 7 | ||||||
3 | DMD-EFLGE | DMD-EFLGE-101 | 3 | 0.65 | N-Terminal ProB-type Natriuretic Peptide (IU/L) | BNPPRONT | 40 | Visit 1 (Baseline) | 1 | VISIT 1 | 16May2022 | Y | 40 | 100 | 40 | NORMAL | Treatment A | Y | 8 | YEARS | M | LB | 1 | |||
4 | DMD-EFLGE | DMD-EFLGE-101 | 4 | 0.65 | Left Ventricular Ejection Fraction, Calculated (%) | LVEFC | 60 | Visit 6 (Month 12) | 6 | VISIT 6 | 01Jun2023 | 67 | -7 | -10.447761 | Treatment A | Y | 8 | YEARS | M | CV | 11 | |||||
5 | DMD-EFLGE | DMD-EFLGE-101 | 5 | 0.65 | Right Ventricular Ejection Fraction, Calculated (%) | RVEFC | 61 | Visit 6 (Month 12) | 6 | VISIT 6 | 01Jun2023 | 74 | -13 | -17.567568 | Treatment A | Y | 8 | YEARS | M | CV | 10 | |||||
6 | DMD-EFLGE | DMD-EFLGE-101 | 6 | 0.65 | N-Terminal ProB-type Natriuretic Peptide (IU/L) | BNPPRONT | 900 | Visit 6 (1 Year) | 6 | VISIT 1 | 1Jun2023 | 40 | 860 | 2150 | 100 | 900 | HIGH | Treatment A | Y | 8 | YEARS | M | LB | 2 |
Ejection Fraction
- change in ejection fraction, would expect a decline in EF 2-3% per year, would prefer an improvement or no change. Concerning if rapid progression, 10% decline or more, for example.
NTproBNP
- % change over a period of time – a decrease would mean improvement, annually is appropriate
SDTM Examples: Basic CMR tests - Systolic Function