Computational · Paper · 2026

Exploratory Data Analysis: A Reproducible Notebook Template

Daniel Ari Friedman

Zenodo

Download PDF Publication source Paper folder on GitHub Read extracted text

Overview

Exploratory data analysis (EDA) is the most common entry point in applied
research, yet it is also where reproducibility most often breaks down: logic
accumulates in notebook cells that are never tested and quietly drift from the
prose describing them. This paper presents the computational-notebook
exemplar of the Research Project Template (https://github.com/docxology/template):
an interactive walkthrough notebook
(projects/templates/template_eda_notebook/notebooks/eda_walkthrough.ipynb)
that imports a small, fully-tested EDA library rather than carrying logic in its
cells.

We ship a deterministic dataset (data/measurements.csv) with a designed
correlation structure and a handful of missing values, then load, clean,
summarize, correlate, and visualize it entirely through tested functions in
src/eda/. The library is side-effect-free — no plotting and no file I/O — and
standalone (numpy and pandas only), so it is covered above the 90% project gate
and reused identically from the notebook, the thin analysis script
(scripts/eda_analysis.py), and this manuscript.

Contributions are methodological and architectural. On the methods side,
we walk the canonical first EDA pass: surface missingness explicitly rather than
imputing it, compute per-column descriptive statistics and per-group means, and
rank features by Pearson correlation. On the architecture side, we demonstrate
the notebook-to-tested-source extraction workflow — explore fast in a cell, and
the moment a computation matters, move it into the library behind a failing
test — verified by a zero-mock suite and a structural notebook-binding check
().

---
Associated artifacts
GitHub release: v1.0.0 (https://github.com/docxology/template_eda_notebook/releases/tag/v1.0.0)
DOI: https://doi.org/10.5281/zenodo.21086292
Zenodo: https://zenodo.org/records/21086292
PDF SHA-256: 0b10852bda89361cd71063867b55d9aed942881476867813facd549a961b0c1d

exploratory data analysiscomputational notebookreproducible researchpandasdata cleaningcorrelation analysis

Overview source: Curated paper metadata.

Methods and contributions

Read the source for the full argument, qualifications, and evidence.

Findings and contributions

  • With the shipped data, four rows with missing values are removed, leaving a complete-case dataset.
  • The correlation ranking recovers the designed strong positive height–weight relationship, with resting heart rate only weakly related.
  • All tests pass with coverage above the 90% project gate and no mocks.
  • The paper states its contribution is procedural: the same tested functions back the notebook, the headless script and the manuscript.
  • Stated limitations: a single small synthetic cohort, listwise deletion only, Pearson correlation only, and static outputs only.

Methods

  • Synthetic 120-record measurement cohort with a fixed seed — Analyzes a shipped deterministic CSV of height, weight and resting heart rate across three groups, with designed correlations and a few blank cells.
  • Listwise deletion with a reported CleaningReport, no imputation — clean_dataset() drops rows missing any numeric feature and records rows in, remaining and dropped, rather than imputing.
  • Descriptive statistics, group means and Pearson correlation ranking — Computes per-column summaries and per-group means, then ranks distinct feature pairs by absolute Pearson correlation via strongest_pairs().
  • Side-effect-free src/eda library with figure-data preparers — Library functions return plot-ready frozen dataclasses (histogram bins, heatmap grid, category counts); only the thin script and notebook call matplotlib.
  • Zero-mock pytest suite, notebook-binding check and >=90% coverage gate — Tests exercise real data with exact expected statistics, parse the .ipynb to check imports and absence of cell-defined logic, and enforce coverage.

Summary sources: Paper metadata and evidence · Extracted source text.

Document downloads

PDFs are hosted here; supporting sources may use pinned archives.

Citation

Citation metadata follows the unified bibliography.

Friedman, Daniel Ari. 2026. Exploratory Data Analysis: A Reproducible Notebook Template. Zenodo. DOI: 10.5281/zenodo.21086292. URL: https://doi.org/10.5281/zenodo.21086292.
Download bibliography Add to reading list Explore connections

Catalog details and resources

Catalog row181
Citation keyFriedman2026ExploratoryDataAnalysisReproducible181

Related works

Ranked by recorded methods, topics, contributors and associated software, with contributor roles and domain-only matches labelled. Metadata overlap is not a citation or a scientific equivalence.

View all Computational works, software & media →