Resources

Curated books, software, datasets, and learning paths for causal inference, machine learning, AI, and decision science.

If you are interested in working with me on any of these topics, please reach out. I am always glad to hear from motivated students at all levels.

Causal Inference Foundations

These resources are the conceptual backbone for potential outcomes, DAGs, identification, estimands, counterfactual reasoning, and the habit of stating assumptions before estimating effects.

Hernan and Robins, Causal Inference: What If

A rigorous free book for potential outcomes, target trials, observational causal inference, time-varying treatments, and g-methods. It is especially useful when teaching causal inference as a disciplined design problem.

Pearl, Causality

The structural causal model reference for graphs, do-calculus, counterfactuals, mediation, and identification. It gives the formal language behind many DAG-based workflows.

Cunningham, Causal Inference: The Mixtape

An accessible applied treatment of regression, matching, difference-in-differences, regression discontinuity, instrumental variables, and synthetic control.

Molak, Causal Inference and Discovery in Python

A practical applied book for learning causal inference and causal discovery through Python examples. It is useful for readers who want the concepts tied directly to runnable workflows, package usage, graphs, estimation, and diagnostics.

Angrist and Pischke, Mostly Harmless Econometrics

A practically minded econometrics text for experiments, IV, DiD, regression discontinuity, and the design logic behind credible empirical strategies.

Peters, Janzing, and Scholkopf, Elements of Causal Inference

A useful bridge between causal inference and machine learning, with emphasis on structural causal models, invariance, causal discovery, and prediction under distribution shift.

Python Causal Inference Ecosystem

These libraries support causal graphs, estimation, refutation, heterogeneous treatment effects, double machine learning, causal discovery, and the statistical modeling infrastructure around them.

PyWhy

The umbrella ecosystem for causal inference and causal machine learning in Python, including DoWhy and EconML.

DoWhy

A causal inference library built around modeling assumptions, identifying estimands, estimating effects, and running refutation checks.

EconML

A library for heterogeneous treatment effects, orthogonal learning, causal forests, policy learning, and treatment effect interpretation.

DoubleML

A focused implementation of double and debiased machine learning for partially linear models, interactive models, treatment effects, and valid inference with flexible nuisance models.

causal-learn

A Python package for causal discovery algorithms, including constraint-based, score-based, and functional causal model approaches.

statsmodels

Core statistical modeling infrastructure for regression, generalized linear models, time series, robust standard errors, and classical inference.

scikit-learn

The practical machine learning base layer for preprocessing, model fitting, validation, pipelines, model inspection, and reusable learners inside causal workflows.

Causal Package Tutorials

My tutorial track for DoWhy, EconML, DoubleML, and causal-learn, with package syntax tied to assumptions, estimands, diagnostics, and reporting.

Machine Learning, Interpretability, and Anomaly Detection

These resources are useful for predictive modeling, interpretability, model reliance, anomaly detection, monitoring, robustness checks, and operational guardrails.

Molnar, Interpretable Machine Learning

A clear online reference for feature effects, permutation importance, SHAP, counterfactual explanations, global explanations, and the practical limits of explanation methods.

SHAP Documentation

Documentation for Shapley-value-based explanations across tree models, linear models, deep models, and model-agnostic workflows.

LIME

A local surrogate explanation method that remains useful for teaching how local explanations approximate model behavior near a case of interest.

scikit-learn Partial Dependence and ICE

Practical documentation for feature effect visualization, including partial dependence and individual conditional expectation plots.

PyOD

A Python toolkit for outlier and anomaly detection, useful for comparing detector families and building operational anomaly workflows.

Chandola, Banerjee, and Kumar, Anomaly Detection Survey

A classic survey for anomaly detection problem types, modeling choices, evaluation issues, and application domains.

AI and Machine Learning Lecture Module

My course sequence on machine learning basics, interpretable ML and XAI, anomaly detection, and AI-assisted causal workflows.

Datasets for Teaching and Projects

These datasets are useful for examples where students need more than toy data. Some are causal benchmarks with simulated treatment effects. Others are observational, randomized, sequential, or logged datasets that support realistic design, diagnostics, and decision analysis.

iPinYou Real-Time Bidding Dataset

Public advertising auction logs with bids, impressions, clicks, market prices, user features, and campaign context. The data are useful for replay evaluation, support diagnostics, reserve and floor-policy analysis, out-of-time validation, and marketplace decision problems.

IHDP Benchmark Data

A widely used semi-synthetic treatment effect benchmark for testing CATE estimation, overlap issues, and heterogeneity workflows.

ACIC Data Analysis Challenge

Benchmark datasets for causal inference challenges, especially useful for targeted selection, heterogeneous effects, and inference under known simulation structure.

Criteo Uplift Prediction Dataset

A large-scale randomized advertising dataset with treatment assignment, exposure, visits, conversions, and anonymized covariates. It is useful for uplift modeling, incrementality analysis, treatment targeting, sparse-outcome inference, response modeling, and policy evaluation.

Open Bandit Dataset and Pipeline

Logged bandit data and software for recommendation and retail-style decision systems. It is useful for support diagnostics, off-policy evaluation, ranking, recommendation, counterfactual policy comparison, and practical experiments with logged propensities.

KuaiRand

An unbiased sequential recommendation dataset with repeated user-item interactions and randomized exposure. It is useful for studying recommendation dynamics, repeated exposure, long-horizon behavior, user-item interaction structure, and member-experience style constraints.

Hillstrom Email Analytics and Data Mining Challenge

A randomized email marketing experiment with customer history, treatment arms, visits, conversions, and spend. It is useful for segment-level lift, treatment heterogeneity, reporting-granularity tradeoffs, signal loss, and incrementality measurement.

MovieLens

A family of movie-rating datasets useful for recommendation, ranking examples, logged-feedback thought experiments, evaluation design, and personalization workflows.

UCI Machine Learning Repository

A long-running collection of machine learning datasets that work well for supervised learning, feature engineering, validation, and model comparison.

Kaggle Datasets

A broad source of applied datasets for building portfolio-style projects, with the usual caution that provenance, leakage, and target definitions need careful checking.