Skip to the document
Madhuopen lab

Public data, kept honest · part 2 of 4

adopted12 September 2026cost: local CPU; runtime ≈ 2.5 minutes a run

Employer identity: one company, one row

5 runs

The question

Did the change make the dataset more accurate without moving the headline numbers for a reason nobody can explain?

adopted

Employer fields: display name prefers longer spelling when top spelling is a truncation; wage P25/P75, prevailing-wage level counts, top SOC codes (last 3 yrs) — no count changes; runtime 281s (watch the 5-min budget)

Runs5
Kept5

Every run

Every run
#what changedverdictKC filings (3 y)geo resolved %notes
3Employer identity: union-find merge of name clusters sharing a FEIN when names overlap (Jaccard>=0.5 on tokens minus stopwords, or prefix)kept555499.983610 pair-merges; employer_keys 121087->118312; kc_feins_multi_name 18->7 (remaining are distinct entities under one FEIN or pure spellings); Burns & McDonnell…
4Config: employer aliases (IBM, USD 500, Truman/University Health, Cloud Nine Tek...) + KC city spelling fixes (Desoto, Kanas City, Lexena, 10 Overland Park variants)kept555499.98kc_city_labels 76->58; kc_feins_multi_name 7->3 (remaining: KDOT/KU, Colgate/Hill's, Coperion/Schenck = distinct entities sharing FEIN); merge examples exposed…
5Employer identity: stricter FEIN merge (typo-tolerant token match, singularize, allow at most 1 differing token, prefix must be word-boundary)kept555499.98merges 3610->2774; bad merges (SUNY campuses, NYC departments, CUNY colleges) gone from examples; kc_feins_multi_name 3->5 (now correctly unmerged distinct…
7Spec (user): window Jul 2023-Jun 2026; new-job / extension / transfer-in split from LCA basis fields (NEW_EMPLOYMENT, CONTINUED_EMPLOYMENT, CHANGE_EMPLOYER ...)kept597799.98KC 3-yr: 5977 filings = 2200 new / 1367 extension / 829 transfer / rest other
10Employer fields: display name prefers longer spelling when top spelling is a truncation; wage P25/P75, prevailing-wage level counts, top SOC codes (last 3 yrs)kept597799.98no count changes; runtime 281s (watch the 5-min budget)
public dataH-1Bidentity