MissingPatterns.jl

Terminal-based toolkit for exploring missing data patterns in any Tables.jl-compatible source — zero plotting-library dependencies, pure Unicode/ANSI terminal rendering.

Installation

using Pkg
Pkg.add("MissingPatterns")

Quick Start

using MissingPatterns

# Works with NamedTuples, DataFrames, CSV.File, etc.
tbl = (A = [1, missing, 3, 4],
       B = [missing, 2, 3, 4],
       C = [1, missing, missing, 4])

plotmissing(tbl)

Functions

FunctionWhat it showsPage
plotmissingWhere/how much is missing (heatmap)Heatmaps
plotmissingdiffBefore/after diff (e.g. auditing an imputation step)Heatmaps
missingpatternsWhich columns go missing togetherDiagnostics
missingsummaryPer-column counts, % and a distribution sparklineDiagnostics
missingcooccurrencePairwise ϕ/Jaccard correlation of missingness masksDiagnostics
missingrowsHow many values are missing per rowDiagnostics
missinghtmlThe heatmap as a standalone HTML fragmentExport and output
missingreportThe heatmap as an object that renders itself per mediumExport and output

Every display above has a data counterpart that returns a Tables.jl-compatible row table instead of printing — see Data API.

Full docstrings are in the Public API reference.

How to cite

Every release is archived on Zenodo. The repository ships a CITATION.cff (which GitHub's Cite this repository button reads) and a CITATION.bib:

@software{bertuzzi_missingpatterns_2026,
  author  = {Bertuzzi, Dante},
  title   = {{MissingPatterns.jl}: terminal-based exploration of missing
             data patterns in {Julia}},
  year    = {2026},
  version = {0.6.0},
  doi     = {10.5281/zenodo.22217099},
  url     = {https://github.com/dantebertuzzi/MissingPatterns.jl},
  note    = {Julia package}
}

Two DOIs coexist and are not interchangeable: the concept DOI 10.5281/zenodo.22217099 identifies the project as a whole and always resolves to the newest version, while each release gets its own (0.5.1 is 10.5281/zenodo.22217708). Cite the version you actually ran — what the package reports has changed between releases. See the README for the reproducibility checklist.