R Learning Lab R Learning Lab
  • Home
  • Courses
    • R Programming
    • R Shiny
    • Python
    • Clinical Programming with R
  • Training
  • About
  • Contact

Training for clinical and data programming teams

Programming skills that survive an audit

Four practical, project-based courses covering R, Shiny, Python and clinical programming with the pharmaverse. Written for statistical programmers, data scientists and biostatisticians who have to produce work that is reproducible, reviewable and defensible.

Start with R Programming Clinical Programming with R

Course portfolio

Course 01 · Foundation

R Programming

The language from the ground up: objects, vectors and data frames, importing SAS and Excel data, dplyr and tidyr, functions and tidy evaluation, debugging, testthat, package development and Git.

12 lessons · Beginner to intermediate · Open course

Course 02 · Applications

R Shiny

Build applications people actually use: reactivity done properly, modules, dynamic UI, tables and plots, uploads and downloads, authentication, automated testing, deployment and production architecture.

11 lessons · Intermediate · Open course

Course 03 · Second language

Python

Python for people who already think in data: fundamentals, NumPy, pandas, clinical datasets, statistical analysis, machine learning, TLF generation with rtflite, deployment — and generative AI from prompting to agents.

20 lessons · Beginner to advanced · Open course

Course 04 · Flagship

Clinical Programming with R

The full submission pipeline in R: study folder structure, SAS7BDAT and XPT, SDTM, ADaM with admiral, metadata-driven programming, TLFs with r2rtf and Tplyr, validation, define.xml, xportr, pharmaverse workflows and SAS-to-R migration.

12 lessons · Intermediate to advanced · Open course

How these courses are built

Every lesson is a working example

Code is complete and runnable, not fragments. You can copy a lesson into RStudio and it will do something useful on the first try.

Exercises with worked solutions

Each lesson ends with graded exercises. Solutions are collapsed so you can attempt the problem first, then compare approaches.

Written for regulated work

Reproducibility, traceability, validation and review are treated as first-class concerns rather than an afterthought bolted on at the end.

SAS translations throughout

If you are coming from SAS, side-by-side comparisons show what the equivalent R idiom is and — more importantly — where the equivalence breaks down.

Suggested learning paths

If you are… Start here Then Then
A SAS programmer moving to R R Programming Clinical Programming with R R Shiny
A statistician who writes analysis code R Programming R Shiny Python
A data scientist adding clinical domain skills Clinical Programming with R R Programming (lessons 8–12) —
Building internal tools for a study team R Programming R Shiny Python
Standardising a team on one toolchain Clinical Programming with R R Programming Training options

Where to go next

  • New to R entirely → R and RStudio setup
  • Already comfortable with dplyr → Functions and tidy evaluation
  • Need to read a .sas7bdat file today → Reading SAS7BDAT and XPT files
  • Your Shiny app has become unmaintainable → Modules
  • Looking for team training → Training options
Back to top

© 2026 R Learning Lab · Training for clinical and data programming teams

  • Courses

  • Training

  • About

  • Contact

Built with Quarto