MATH vs. VIBES / data / ep-01

EP 01 — Airports

Every US domestic flight since 2003. One parquet file per year. Take it, break it, prove us wrong.

This is the US DOT Bureau of Transportation Statistics "Reporting Carrier On-Time Performance" table: 150+ million scheduled domestic flights, 2003-2025, as reported monthly by the airlines to the federal government. We cleaned it, kept the columns the show uses, and repacked it into one zstd-compressed parquet file per year (the raw BTS download is hundreds of zipped CSVs).

Columns include flight date, carrier, flight number, origin/destination airport, scheduled and actual departure/arrival times, delay minutes, cancellation and diversion flags, and the five official delay-cause buckets (carrier, weather, NAS, security, late-arriving aircraft).

Download

bts_202581 MB bts_202482 MB bts_202379 MB bts_202277 MB bts_202170 MB bts_202051 MB bts_201985 MB bts_201891 MB bts_201765 MB bts_201664 MB bts_201566 MB bts_201466 MB bts_201372 MB bts_201267 MB bts_201165 MB bts_201067 MB bts_200966 MB bts_200875 MB bts_200778 MB bts_200677 MB bts_200574 MB bts_200473 MB bts_200359 MB

23 files, ~1.7 GB total.

Query it in one line

DuckDB reads parquet straight off the URL, no download needed:

SELECT origin, round(100.0*avg((dep_delay>=15)::int),1) AS pct_late
FROM read_parquet('https://data.mathvsvibes.com/bts/bts_2025.parquet')
WHERE cancelled=0 GROUP BY origin ORDER BY pct_late DESC LIMIT 10;

Or in Python with pandas:

import pandas as pd
df = pd.read_parquet("https://data.mathvsvibes.com/bts/bts_2025.parquet")

Source and license

Original source: BTS Reporting Carrier On-Time Performance (transtats.bts.gov). US government work, public domain. Our repack is offered as-is under the same terms; cite BTS as the source. Reporting covers carriers with ≥0.5% of domestic scheduled revenue, so small regional operators are absent.

Found something in here that contradicts the show? Bring receipts: drop them in the comments on the episode.