top of page
Search

Clinical SAS Datasets Explained: Raw, SDTM, ADaM and Transport Files

nehaeduvercity
7 hours ago
3 min read

By Neha Jain, Principal Consultant and SAS trainer · 17+ years training in SAS · 5,000+ learners trained · Updated 7 November 2026


"Clinical SAS datasets" can mean several things: the raw data collected in a trial, the SDTM and ADaM datasets built from it, or the transport files sent to regulators. This guide explains each type, how they are structured, how to inspect them in SAS, and where to find practice data.


The short answer

Clinical SAS datasets flow from raw collected data, to CDISC SDTM datasets (one per domain), to ADaM analysis datasets, and are submitted as SAS XPORT (.xpt) transport files with define.xml.


Clinical SAS datasets in order: raw CRF data, SDTM datasets, ADaM datasets and XPT transport files for submission

The four kinds of clinical datasets

Type

What it contains

Examples

Raw / CRF data

Data as collected from the EDC system, labs and devices

Demographics form, lab vendor files

SDTM datasets

Collected data in standard domains

DM, AE, VS, LB, EX, CM

ADaM datasets

Analysis-ready data derived from SDTM

ADSL, ADAE, ADLB, ADVS, ADTTE

Transport files

Submission copies in SAS XPORT format

dm.xpt, adsl.xpt

For the difference between the two standards, see SDTM vs ADaM explained.


Common SDTM datasets

Dataset

Holds

DM

Demographics: one row per subject

AE

Adverse events

CM

Concomitant medications

EX

Exposure to study treatment

LB

Laboratory results

VS

Vital signs

DS

Disposition: completion and discontinuation

MH

Medical history


Common ADaM datasets

Dataset

Holds

ADSL

Subject-level data: treatments, dates, population flags

ADAE

Adverse events prepared for analysis, with treatment-emergent flags

ADLB

Lab parameters with baseline and change from baseline

ADVS

Vital signs parameters with baseline and change

ADTTE

Time-to-event data with censoring


How a clinical SAS dataset is structured

  • Each row is an observation, such as one adverse event or one lab result.

  • Each column is a variable with a name, type, length, label and often a format.

  • Key variables such as STUDYID and USUBJID link records across datasets.

  • For submission, datasets are saved as SAS XPORT version 5 files, which limit variable names to 8 characters, labels to 40 characters and character values to 200 bytes.


Inspecting a dataset in SAS

Two procedures every clinical programmer uses daily:

libname sdtm "/study/data/sdtm";

proc contents data=sdtm.ae varnum;
run;

proc print data=sdtm.ae (obs=10);
  var usubjid aeseq aeterm aedecod aesev aestdtc;
run;

PROC CONTENTS shows variables, types, lengths and labels; PROC PRINT shows the first records so you can check values.


Creating a transport file for submission

libname xptout xport "/study/submission/ae.xpt";

data xptout.ae;
  set sdtm.ae;
run;

The XPORT engine writes a version 5 transport file; checks with tools such as Pinnacle 21 and a matching define.xml come before submission.


Where to find practice clinical datasets

  • The CDISC pilot study data, widely used in training and in the R Consortium pilot submissions.

  • The pharmaverse test-data R packages, which include example SDTM and ADaM datasets.

  • Simulated datasets provided in training courses.


Frequently asked questions

What is a SAS dataset? A table stored in SAS format (.sas7bdat), with rows (observations) and columns (variables) plus descriptive metadata.

What format are clinical datasets submitted in? As SAS XPORT version 5 transport files (.xpt), together with define.xml.

Which dataset should I learn first? DM in SDTM and ADSL in ADaM — almost everything else links to them.

Can I practise without a company's data? Yes. Public pilot data and the pharmaverse test-data packages provide realistic examples.


Work with real clinical datasets at Eduvercity

Eduvercity's live online Clinical SAS course, taught by Neha Jain, has you build SDTM and ADaM datasets and TLFs from realistic simulated trial data. Next, read TLF programming explained and Clinical SAS interview questions.




About the author

Neha Jain is a Principal Consultant and Trainer at Eduvercity and works independently as a freelance SAS consultant and trainer. She has trained professionals in SAS for more than 17 years and has more than 20 years of experience as a global consultant across programming, data and project leadership, and has trained more than 5,000 students and professionals, as well as teams at companies worldwide. She teaches Base and Advanced SAS, Clinical SAS (CDISC SDTM, ADaM and TLFs), clinical R and Python to learners in India, the UAE, the UK, the USA and Canada, and advises teams moving clinical programming work from SAS to R. The views in this article are her own. More about Neha and Eduvercity.

 
 
 

Comments


Frequently Asked Questions

Q: Are classes live or recorded?
A: Classes are live and online, with the trainer teaching each session.

​

Q: Can I join from outside India?
A: Yes. Batches are timed for learners in India, the UAE, the UK, the USA and Canada.

​

Q: Do I need a programming background?
A: Not for Base SAS, Clinical SAS or the beginner R and Python courses.

​

Q: Do I get a certificate?
A: Yes, an Eduvercity course-completion certificate. For SAS certification, we train you for the SAS exams, clear your doubts and guide your preparation; you book and take the exam directly with SAS.

​

Q: Is Eduvercity an official SAS or R partner?
A: No. Eduvercity is an independent training provider that teaches SAS and R tools and concepts.

​

Q: How do I enrol and pay?
A: WhatsApp us on +91 80509 22145 for fees and the next batch. Payment is by UPI or bank transfer.

+91 80509 22145

  • Facebook
  • YouTube

© 2026 Eduvercity. All rights reserved

SAS is a registered trademark of SAS Institute Inc. R is a project of the R Foundation. Eduvercity is an independent training provider and is not affiliated with or endorsed by either.

bottom of page