Data audit (P1)
| file | SHA-256 | rows (excl. header) | cols | range | freq | missing | duplicates |
|---|---|---|---|---|---|---|---|
| data/GDPC1.csv | 1c6c6e9f59e383e20c849dd299175c7a307526c09abdc18f18da9754fc5b3343 (matches README) | 319 | 2 (observation_date, GDPC1) | 1947-01-01 – 2026-07-01 | quarterly, no gaps (spacing 90–92 days) | 0 | 0 dates |
| data/UNRATE.csv | 621ff6fadf50910cb7a21ee20ba610c247cb043b29b4e05c4c1a72fadca2a06c (matches README) | 945 | 2 (observation_date, UNRATE) | 1948-01-01 – 2026-09-01 | monthly, no gaps in dates (28–31 days) | 1 (2025-10-01, empty) | 0 dates |
| data/README.md | 7e61e05785988f6cf32be948415ecb9511994533c3a1ef76958fd13ffc4a8658 | – | – | – | – | – | – |
Units: GDPC1 billions of chained 2017 dollars SAAR (min 2172.4, max 24611.1); UNRATE percent SA (min 2.5, max 14.8). Values plausible, all numeric except the one blank.
Anomalies / issues:
- UNRATE 2025-10 missing (blank) → 2025Q4 quarterly average not formed. Outside the 1959Q4–2019Q4 window: no effect.
- Both series extend beyond 2019Q4 (to 2026). Information rule: dropped before estimation (exclusion step 3). The code asserts the analysed index is exactly the 240 consecutive quarters 1960Q1–2019Q4 and that 1959Q4 levels exist.
- GDPC1 is a current vintage (revised data). No real-time rule in TASK.md; noted as limitation.
Exclusion ledger: out/exclusions.csv (319 → 314 → 312 → 240; removed 5+2+72 = 79; 319−79 = 240 = n_analysed). Unit = GDPC1 quarters.