SPB Git

spb/wp29_uqo

Public
6.8 KB · 61 lines markdown
1# Data audit (P1)23All SHA-256 below were computed and match data/README.md and bundle.json (first 16 hex shown; full hashes recomputed in analysis is unnecessary — checked here with hashlib).45| file | sha256 | rows | cols | columns | date range | missing | duplicate dates | month gaps |6|---|---|---|---|---|---|---|---|---|7| data/RSAFS_current.csv | 627d8bb386ac80f4… | 417 | 2 | ['observation_date', 'RSAFS'] | 1992-01-01..2026-09-01 | NA=0 | dup=0 | gaps=0 |8| data/UMCSENT.csv | 3076277f9f21f4bd… | 887 | 2 | ['observation_date', 'UMCSENT'] | 1952-11-01..2026-09-01 | NA=210 | dup=0 | gaps=0 |9| data/first_release.csv | 1d1ae8b3cacf7799… | 28 | 5 | ['target_month', 'first_release_vintage', 'level_first_release', 'level_prev_year_same_vintage', 'yoy_first_release'] | 2024-06-01..2026-09-01 | NA=0 | dup=0 | gaps=0 |10| data/vintages/PAYEMS_vintage_2025-10-31.csv | d4b4c909ed321fbf… | 1040 | 2 | ['observation_date', 'PAYEMS_20251031'] | 1939-01-01..2025-08-01 | NA=0 | dup=0 | gaps=0 |11| data/vintages/PAYEMS_vintage_2025-11-30.csv | a05ef7fc50cfc339… | 1041 | 2 | ['observation_date', 'PAYEMS_20251130'] | 1939-01-01..2025-09-01 | NA=0 | dup=0 | gaps=0 |12| data/vintages/PAYEMS_vintage_2025-12-31.csv | 829dae087af61916… | 1043 | 2 | ['observation_date', 'PAYEMS_20251231'] | 1939-01-01..2025-11-01 | NA=0 | dup=0 | gaps=0 |13| data/vintages/PAYEMS_vintage_2026-01-31.csv | 8fd01c5d2740e869… | 1044 | 2 | ['observation_date', 'PAYEMS_20260131'] | 1939-01-01..2025-12-01 | NA=0 | dup=0 | gaps=0 |14| data/vintages/PAYEMS_vintage_2026-02-28.csv | 4a913e67ac5ffbb4… | 1045 | 2 | ['observation_date', 'PAYEMS_20260228'] | 1939-01-01..2026-01-01 | NA=0 | dup=0 | gaps=0 |15| data/vintages/PAYEMS_vintage_2026-03-31.csv | 919de86b07be9046… | 1046 | 2 | ['observation_date', 'PAYEMS_20260331'] | 1939-01-01..2026-02-01 | NA=0 | dup=0 | gaps=0 |16| data/vintages/PAYEMS_vintage_2026-04-30.csv | 06a8d663d9aaa61c… | 1047 | 2 | ['observation_date', 'PAYEMS_20260430'] | 1939-01-01..2026-03-01 | NA=0 | dup=0 | gaps=0 |17| data/vintages/PAYEMS_vintage_2026-05-31.csv | e2a152e874139acd… | 1048 | 2 | ['observation_date', 'PAYEMS_20260531'] | 1939-01-01..2026-04-01 | NA=0 | dup=0 | gaps=0 |18| data/vintages/PAYEMS_vintage_2026-06-30.csv | 19fbc6cd3547ffad… | 1049 | 2 | ['observation_date', 'PAYEMS_20260630'] | 1939-01-01..2026-05-01 | NA=0 | dup=0 | gaps=0 |19| data/vintages/PAYEMS_vintage_2026-07-31.csv | 3a3a6603fcc31c6e… | 1050 | 2 | ['observation_date', 'PAYEMS_20260731'] | 1939-01-01..2026-06-01 | NA=0 | dup=0 | gaps=0 |20| data/vintages/RSAFS_vintage_2025-10-31.csv | 3ecb0832a391e726… | 404 | 2 | ['observation_date', 'RSAFS_20251031'] | 1992-01-01..2025-08-01 | NA=0 | dup=0 | gaps=0 |21| data/vintages/RSAFS_vintage_2025-11-30.csv | 4a683d85374690f1… | 405 | 2 | ['observation_date', 'RSAFS_20251130'] | 1992-01-01..2025-09-01 | NA=0 | dup=0 | gaps=0 |22| data/vintages/RSAFS_vintage_2025-12-31.csv | 436df4b5509b1dfe… | 406 | 2 | ['observation_date', 'RSAFS_20251231'] | 1992-01-01..2025-10-01 | NA=0 | dup=0 | gaps=0 |23| data/vintages/RSAFS_vintage_2026-01-31.csv | b92ab6a5c1dbdc56… | 407 | 2 | ['observation_date', 'RSAFS_20260131'] | 1992-01-01..2025-11-01 | NA=0 | dup=0 | gaps=0 |24| data/vintages/RSAFS_vintage_2026-02-28.csv | 2af0a3aaeeba81ef… | 408 | 2 | ['observation_date', 'RSAFS_20260228'] | 1992-01-01..2025-12-01 | NA=0 | dup=0 | gaps=0 |25| data/vintages/RSAFS_vintage_2026-03-31.csv | 0316fdf238d55d9f… | 409 | 2 | ['observation_date', 'RSAFS_20260331'] | 1992-01-01..2026-01-01 | NA=0 | dup=0 | gaps=0 |26| data/vintages/RSAFS_vintage_2026-04-30.csv | 02dcc697a1db3475… | 411 | 2 | ['observation_date', 'RSAFS_20260430'] | 1992-01-01..2026-03-01 | NA=0 | dup=0 | gaps=0 |27| data/vintages/RSAFS_vintage_2026-05-31.csv | 8c3fe35302135896… | 412 | 2 | ['observation_date', 'RSAFS_20260531'] | 1992-01-01..2026-04-01 | NA=0 | dup=0 | gaps=0 |28| data/vintages/RSAFS_vintage_2026-06-30.csv | 2f103157f4a9b7a3… | 413 | 2 | ['observation_date', 'RSAFS_20260630'] | 1992-01-01..2026-05-01 | NA=0 | dup=0 | gaps=0 |29| data/vintages/RSAFS_vintage_2026-07-31.csv | 52c04a8fce2effa7… | 414 | 2 | ['observation_date', 'RSAFS_20260731'] | 1992-01-01..2026-06-01 | NA=0 | dup=0 | gaps=0 |3031All 23 CSV SHA-256 hashes match `data/README.md` (23 OK, 0 mismatch; shasum check run in P1). Row counts match README.3233## Units34RSAFS: millions of USD, SA. PAYEMS: thousands of persons, SA. UMCSENT: index 1966Q1=100. first_release.yoy_first_release: percent (100·log ratio).3536## Real-time design: last(V) per origin (publication delays)37| origin V | last(V) RSAFS | lag (months before V's month) | h=1 target | h=3 target | PAYEMS last |38|---|---|---|---|---|---|39| 2025-10-31 | 2025-08 | 2 (publication delay) | 2025-09 | 2025-11 | 2025-08 |40| 2025-11-30 | 2025-09 | 2 | 2025-10 | 2025-12 | 2025-09 |41| 2025-12-31 | 2025-10 | 2 | 2025-11 | 2026-01 | 2025-11 |42| 2026-01-31 | 2025-11 | 2 | 2025-12 | 2026-02 | 2025-12 |43| 2026-02-28 | 2025-12 | 2 | 2026-01 | 2026-03 | 2026-01 |44| 2026-03-31 | 2026-01 | 2 | 2026-02 | 2026-04 | 2026-02 |45| 2026-04-30 | 2026-03 | 1 (caught up: two months added at once) | 2026-04 | 2026-06 | 2026-03 |46| 2026-05-31 | 2026-04 | 1 | 2026-05 | 2026-07 | 2026-04 |47| 2026-06-30 | 2026-05 | 1 | 2026-06 | 2026-08 | 2026-05 |48| 2026-07-31 | 2026-06 | 1 | 2026-07 | 2026-09 | 2026-06 |49All 20 targets (2025-09 … 2026-09) exist in first_release.csv.5051## Anomalies521. Irregular RSAFS publication timing (table above): last(V) lags V by 2 months for the first six origins, 1 month thereafter. Handled by defining targets relative to last(V) as TASK requires.532. first_release vintages: 2025-09 first appears only in the 2025-11-30 vintage; 2026-02 and 2026-03 both first appear in 2026-04-30 (so 2026-02's "first release" is its second Census estimate, not the advance). Handled: used as provided (task definition), documented.543. Large level revision: RSAFS levels in the current file are ≈4.7–4.9% below the 2026-07-31 vintage for 2025–2026 (ratio ≈1.0000 for 1992 and 2015). first_release rows for 2026-08/2026-09 use prev-year levels on the revised basis (e.g. 2025-08: 700218 vs 732010 earlier). Because YoY growth is computed within a single vintage, levels are never mixed across vintages; the revision only enters estimand (d).554. UMCSENT: 210 empty values, all before 1978 (quarterly survey era); none after 1978-01. UMCSENT is not used by my model (decision in log), so no handling needed.565. PAYEMS vintages were checked for gaps/missing only (none); PAYEMS is not used by my model, so its revisions were not analysed.576. No duplicate dates, no gaps, no missing values in RSAFS/PAYEMS vintages or first_release.5859## Information-availability60RSAFS_current.csv violates the forecast-time availability rule by construction; it is read only in the revision block (estimand d). UMCSENT current vintage: allowed with months <= month(V); not used. No other violations.61
Files · 152a55b8fa2830f50fa35e5aed99c0037f713345
Menu

Theme