Register-based research at DST

Who is this guide for, and what will you learn?

Published

September 9, 2026

This guide takes you from a research question to a finished, exportable result using the Danish registers on the DST server. It assumes no prior register experience and only a little R.

New here? Start at phase 1 - Plan your study and follow the phases in order. Working on DARTER (project 708421)? Read DARTER - overview and pipeline first.

Looking for something specific? Search in the top right. The 🔍 box matches exact words; Search by meaning next to it also understands synonyms and Danish, for when you do not know what the thing is called here.

The phases of the guide

The guide is built as 14 phases, running from planning to export.

Phase Contents
1 - Plan your study Research question, key concepts and data model
2 - R: the bare essentials The minimum of R you need to get going
3 - Log in to DST Access to the server and the first overview
4 - File types and loading Parquet and SAS - formats and conversion
5 - Extracting data step by step The universal extraction pattern: read_register/open_dataset → filter → collect
6 - First extraction Your first real extraction with synthetic data
7 - Inspect your data Check structure, types and distributions before analysis
8 - Find your registers Find the right registers for exposure, outcome and covariates
9 - Hospital contacts (LPR) LPR2/LPR3 and ICD codes
10 - Build your study population Cohort, index date, in/exclusion, censoring and special designs
11 - Extract variables Extract outcomes, socioeconomics and comorbidity - filtered to the cohort
12 - Assemble and prepare the dataset Joins, pivots and handling missing data
13 - Analysis Tables, figures, regression, time-to-event, rates and sensitivity analyses
14 - Export and repatriation Get your results safely out of DST

Look-ups - use as you go

These pages are not part of the numbered guide - jump here when you have a specific question.

Page Use it when you want to…
Search by meaning find a page by synonym or by the Danish word, when the exact-match box comes up empty
Overview of registers find the confirmed column names, types and join keys for each register
Find a variable look up which register a given variable lives in
Format tables translate codes to text (municipality, education and employment codes) with DST’s SAS format files
Parquet and fastreg point fastreg at your registers, or convert SAS files to parquet
Functions: overview look up a single function - what do filter(), collect(), %>%, left_join() do?
Good coding practice structure, naming and reproducible code
DST pitfalls check the traps where your code runs and the answer is quietly wrong
Troubleshooting work out a red error message, or an empty result, and find where to ask
Algorithms & special packages ready-made algorithms (OSDC, NMI) to derive variables
Learning resources courses and books for R, epidemiology and statistics
TipWant to help?

Do you have reusable code for register-based research - e.g. a SEPLINE algorithm, weighted medication use, family linkage, or episode construction? We would love to hear from you, even if it is a draft. Get in touch →

Back to top