Juliet Asantewaa Sarpong

Juliet AsantewaaSarpong

Data scientist and statistician. I find out what actually drives results, not just what moves with them.

Four years turning messy, real-world data into decisions for Microsoft, Unilever, P&G and BIC, from pricing and market analysis to audience and media strategy. Now a PhD researcher in Statistics at the University of Edinburgh, in the Khamseh & Beentjes Lab, specialising in causal inference, and bringing that rigour to customers, campaigns and clinical data alike.

  • Causal inference
  • Health & genomic data
  • R · Python · Julia
Portrait of Juliet Asantewaa Sarpong

Research

Methods for separating cause from correlation when you can't run an experiment.

Research poster titled Collaborative Targeted Learning in Genomics, in navy and gold
PhD research poster, School of Mathematics, University of Edinburgh.

PhD work sample · Poster

When linkage disequilibrium challenges causal inference

Supervisors: Dr Sjoerd Beentjes and Prof Chris Ponting · Advisor: Dr Ava Khamseh

In plain termsNearby DNA variants are inherited together, so it is hard to tell which one actually affects a trait. I test which causal estimators still give honest answers when that happens.

Six estimators compared on simulated genotypes (10,000 people, 1,000 variants, 200 replicates per scenario) across strong, moderate and minimal linkage disequilibrium, run as array jobs on the Eddie HPC cluster.

What I found
  • Confidence interval coverage depends on how strongly variants are linked, not on how the outcome was generated.
  • Wang-CTMLE performs best under strong and moderate linkage disequilibrium, with C-TMLE₁ and scalable C-TMLE close behind.
  • Standard TMLE underperforms throughout, because it underestimates its own variance rather than because it is biased.

C-TMLE for causal inference in high-dimensional genomic data

PhD thesis, University of Edinburgh. Member of the Khamseh & Beentjes Lab, Institute of Genetics and Cancer

Estimating the causal effects of genetic variants on disease from observational UK Biobank data, including settings where data are missing in non-random ways. The focus is on doubly robust, targeted estimators that stay reliable when models are misspecified.

Targeted Learning in Genomics and Molecular BiomedicineUnder review

Co-author, International Journal of Biostatistics

Contributed the C-TMLE implementation, integrating it into the open-source Julia package TMLE.jl.

Benchmarking causal machine learning estimators

Simulation study in R on the Eddie HPC cluster

A large-scale comparison of TMLE, C-TMLE variants and scalable C-TMLE against GLM and GLMnet baselines under correctly specified and misspecified models, with cross-fitted nuisance models and jackknife inference chosen for its coverage.

Projects

Applied work in Python, R and Julia, each written up so you can check every number.

Health and clinical data

Animated chart: emergency admissions per 100,000 in Scotland's most and least deprived areas, 2016/17 to 2024/25, with the gap narrowing from 2.19 to 2.01 times

Has the deprivation gap in hospital admissions changed since COVID?

People in Scotland's most deprived areas have about twice as many emergency admissions as those in the least deprived. Using Public Health Scotland open data for every NHS board, I measure that gap four ways and test whether the pandemic shifted it. The gap narrowed from 2.13 to 2.01 times between 2019/20 and 2024/25, at about its pre-pandemic pace, and is now widest in Lothian and Greater Glasgow.

R, tidyverse, slope and relative indexes of inequality, interrupted time series, Shiny running in the browser

Animated chart: recurrence-free survival in the GBSG 2 trial for low, middle and high predicted risk, with observed curves tracking the model's predicted curves

Does a breast cancer prognostic model still work on new patients?

I built a Cox model for 5-year recurrence-free survival on 1,546 women from the Rotterdam tumour bank, then tested it unchanged on 686 women from a German trial. It transported well: a C-index of 0.69 in both cohorts, and 51% observed against 48% predicted 5-year risk. A decision curve shows it beats treating everyone once the risk threshold reaches 27%.

R, survival analysis, Cox model, bootstrap internal validation, external validation, calibration, decision curve analysis, TRIPOD+AI reporting

Causal inference methods

As instruments get stronger, estimators that adjust for every covariate scatter while C-TMLE stays close to the true effect

When does adjusting for more make things worse?

Covariates that only affect who gets treated make standard causal estimators unstable. Across 500 simulated datasets run on the Eddie HPC cluster, C-TMLE was 2.5 times more accurate than AIPW when those covariates were strong, close to an oracle that knew which covariates mattered.

Julia, TMLE.jl, C-TMLE, Pluto, HPC (SGE array jobs)

Business and consumer analytics

As a campaign targets high-value customers more strongly, the naive estimate climbs away from the true effect while TMLE stays on it

Did the email campaign actually work?

When a campaign targets its best customers, a naive comparison overstated its impact by about 60%. Checked against a randomised experiment on 64,000 customers, AIPW and TMLE, implemented from scratch, recover the true effect with honest confidence intervals. A causal forest trained only on the targeted data then picks out who responds most, and the experiment confirms its ranking.

Python, scikit-learn, EconML, causal inference, simulation

Cumulative gains curve: calling the top-scored 30% of bank clients reaches 75% of subscribers

Who should the bank call?

On 41,188 real telemarketing calls, targeting the model's top 30% of clients wins 2.5 times as many term-deposit subscriptions as random calling on the same budget, and keeps 93% of the profit with 70% fewer calls. Trained on earlier calls and tested on later ones, the model still reaches a ROC-AUC of 0.74.

Python, XGBoost, random forest, SHAP, out-of-time validation, business case modelling

Interactive app predicting a board game's BoardGameGeek rating and what drives it

What makes a board game highly rated?

An analysis of 15,249 BoardGameGeek games, with an app that predicts how a new game would be rated. Release year is the strongest predictor, and many popular mechanics lose their advantage once year and length are held constant.

R, tidyverse, glmnet, ranger, Shiny running in the browser

Experience

My career, plotted the way a statistician would: each bar is a role or degree, from start to finish.

2025 – present

Tutor, Mathematics & Statistics

University of Edinburgh

Tutorials and academic support for undergraduate and postgraduate students. Also a Postgraduate Research Ambassador since late 2025.

2022 – 2023

Project Supervisor

Polymorph Labs

Built analytics systems to identify learning gaps and automate performance reporting, improving student engagement and comprehension by about 30%.

2021 – 2022

Data Scientist

Maverick Research

Market research for consumer goods brands including BIC, Unilever and Fanmilk across 15+ cities.

  • Cleaned and validated field-agent retail data, improving accuracy by 20%, and designed the SQL database behind it.
  • Grouped products into categories by use and tracked pricing, supply, demand and distribution within each client's category, such as stationery for BIC.
  • Identified the regions with most growth potential to shape where campaigns ran and what they said, contributing to over 25% sales growth.
2020 – 2021

Data Analyst & Media Executive

Carat (Dentsu)

Media and audience analytics for Microsoft, P&G, Beiersdorf and Betway.

  • Ran demographic and audience analysis to match segments to each product, and presented findings in client strategy meetings to choose media channels.
  • Built automated media-planning templates that cut operational workload by 20%, and optimised campaigns that saved up to 30% in cost.

Education and theses

From modelling the heart's electrical signal, to the question my PhD now builds on: how to estimate a causal effect without trusting a wrong model.

PhD Statistics

University of Edinburgh · September 2024 – present

School of Mathematics funding package

MSc Mathematical Sciences

African Institute for Mathematical Sciences, Ghana · 2023 – 2024

Bending Spoons Scholar

BSc Mathematics

Kwame Nkrumah University of Science and Technology · 2016 – 2020

First Class · Ato-Dadzie Foundation Scholar

Line chart of confidence interval coverage against log sample size for five estimators. One-step estimation stays near 0.95 at every sample size; IPW, OLS and then TMLE fall towards zero as samples grow.
From the thesis: one-step estimation (blue) keeps close to 95% coverage as samples grow, while the other estimators fall away.

MSc thesis · AIMS Ghana · June 2024

Semiparametric estimation techniques protect against model misspecification bias

Supervisor: Dr Sjoerd Beentjes · 46 pages · R

In plain termsIf a statistical model makes the wrong assumptions, its estimate of a treatment's effect can be confidently wrong. I tested whether newer "semiparametric" methods avoid that trap, first on simulated data where the true answer was known, then on a real public health trial.
Methods and findings
  • Compared three traditional estimators (difference in means, linear regression and inverse probability weighting) with two semiparametric ones: one-step estimation and targeted maximum likelihood estimation (TMLE).
  • In simulation, one-step estimation had the lowest bias at every sample size and kept coverage close to 95%. Coverage for regression and weighting collapsed towards zero as samples grew.
  • TMLE beat the traditional estimators on variance but kept a small bias and lost coverage in large samples. I traced this to fitting the models and the targeting step on the same data, which cross-validated TMLE is designed to fix.
  • On data from the WASH Benefits Bangladesh trial (water, sanitation, handwashing and nutrition interventions and child growth), the two semiparametric methods gave confidence intervals about half as wide as the traditional ones.
Line chart titled Numerical Solution of the FHN Model, showing v(t) rising to a peak near 0.4 and falling back, while w(t) rises later towards 0.66
From the thesis: the solution of the FitzHugh–Nagumo model, with the fast variable v(t) and the slower recovery variable w(t).

BSc thesis · KNUST · May 2020

Solving the FitzHugh–Nagumo model with Python

Supervisor: Dr Gaston E. Awashie · Group thesis with Jennifer Owusua Debrah, Fritz Effah Amoakohene and Emmanuel Korsah · 52 pages · Python

In plain termsMany sudden cardiac deaths are caused by a breakdown in the electrical signal that keeps the heart beating. The FitzHugh–Nagumo model describes that signal with two equations. We reviewed how the heart's electrical activity is modelled, then solved the model numerically in Python.
Methods and findings
  • Reviewed models of cardiac electrical activity, from the detailed ionic models (Hodgkin–Huxley, Luo–Rudy, Fox) to simpler ones (FitzHugh–Nagumo, Aliev–Panfilov).
  • Covered the numerical methods behind the solution: Euler, Runge–Kutta, finite differences and Newton–Raphson.
  • Solved the two-equation system with SciPy's ODEINT and plotted how the shape, amplitude and timing of the signal evolve.

Toolkit

Methods
Causal inference, statistical modelling, machine learning, market and audience analysis
Languages
R, Python, Julia, SQL
Visualisation
Tableau, Power BI, Looker
Data & infrastructure
Data cleaning and validation, SQL database design, Git, HPC, cloud platforms

Outside work

I'm usually at a table somewhere: playing tabletop RPGs like the Cosmere RPG and City of Mist, or working through a stack of board games. The rest of the time I'm reading, comic books very much included, and I review most of what I read on Goodreads.