Field manual · 30 entries · open-source clinical R
From Clinical SAS→Clinical R,
one logged day at a time.
SAS2R is a 30-day field manual for clinical research programmers who already live in SAS. Every entry maps a familiar concept — the DATA step, PROCs, macros, transport files — to its modern open-source equivalent across dplyr, the pharmaverse, admiral, xportr and the full CDISC SDTM & ADaM workflow.
A new entry is logged daily in the LinkedIn group “Clinical SAS to Clinical R Transition Professionals.”
SAS — what you know
proc means data=adsl n mean std; class trt01p; var age; run;
R — what you're learning
adsl |>
group_by(trt01p) |>
summarise(
n = n(),
mean = mean(age),
std = sd(age)
)// same numbers, validated output — different toolchain
§ 01 — premise
The discipline is going open-source. You don't have to start over.
Sponsors and CROs are building open-source submission pipelines, and regulators now accept R-based deliverables. SAS2R bridges that gap — not by replacing what you know, but by mapping every familiar SAS concept to its modern R equivalent, so the transition feels less like a leap and more like a translation.
Built for SAS programmers
Every entry begins from what you already do — the DATA step, PROCs, macros, formats — and shows the clean R equivalent, side by side.
Clinical & CDISC focused
Beyond syntax: SDTM and ADaM with admiral, compliant transport files with xportr, and TLFs with rtables, tern and gtsummary.
One entry a day
Thirty bite-sized days — objectives, comparison tables, runnable code, explanation, exercise. A sustainable pace, not a bootcamp.
§ 02 — the index
Six phases. Thirty entries.
Fundamentals to a validated submission.
30
Days 1–5
R Basics & SAS Equivalents
Get oriented in R: data types, character and numeric functions, and how to import and export the data you already move every day in SAS.
Days 6–10
Data Manipulation
The DATA step, reimagined. Learn dplyr verbs — filter, select, mutate, arrange, summarise — and tidy joins.
Days 11–15
Functions & Macro-like Behavior
Replace macros with user-defined functions, iterate cleanly with purrr, and control program flow the R way.
Days 16–20
Clinical Data Handling & CDISC Basics
Read clinical formats, manage metadata and controlled terminology, and meet the CDISC model in an R workflow.
Days 21–25
SDTM Implementation
Build SDTM domains with admiral, haven and xportr — and map familiar PROCs to their open-source counterparts.
§ 03 — begin
Your SAS instincts are an asset here, not baggage.
Open Day 01 today, then follow the daily log in the LinkedIn group to stay on cadence and learn alongside the community.
Open Day 01→