SPB Git

spb/wp29_uqo

Public

# Contract (P0)

Question: Produce a documented, analysis-ready firm cross-section from data/firms.csv and report basic aggregates. Estimands: (1) number of distinct firm_id values; (2) mean and (3) median revenue in millions USD over distinct firms with known revenue; (4) mean employees over all distinct firms. Meaningful assuming one true record per firm (duplicates are assembly errors), the unit column correctly states each row's currency scale, and missing revenue is ignorable for the descriptive aggregates (complete-case). Outputs: out/results.json (task_id, n_unique_firms, n_missing_revenue, n_analysed, mean_revenue_musd, median_revenue_musd, mean_employees, mean_revenue_raw, feasibility, feasibility_reason, data_issues, n_input_rows, random_seed); out/analytic.csv (firm_id, sector, revenue_musd, employees; n_analysed rows); out/exclusions.csv (step, rule, n_before, n_after, n_removed, rationale; chained from rows read to n_analysed); out/report.md (6 sections); out/analysis.py; out/claims.json. Information rules: only data/firms.csv; revenue in millions USD everywhere; rows with unknown revenue excluded from revenue aggregates and listed in the exclusion ledger. Invalidity: conflicting duplicates for the same firm with no rule to choose; unknown/unconvertible units; nonnumeric revenue; reporting revenue in mixed units.

Files · main
Menu

Theme