SPB Git

spb/wp29_uqo

Public
1.8 KB · 18 lines markdown
1# Contract (P0)2**Question.** Produce a documented analytic version of the synthetic firm cross-section `data/firms.csv` and report basic aggregates.34**Estimands.**5- `n_unique_firms`: count of distinct `firm_id` values in the file.6- `n_missing_revenue`: distinct firms whose revenue is empty (unknown).7- `n_analysed`: distinct firms with known revenue (used in revenue aggregates).8- `mean_revenue_musd`, `median_revenue_musd`: mean/median revenue in **millions USD** over the analytic dataset (one row per firm, revenue known). Requires converting rows in `USD_thousands` (divide by 1000). Meaningful under the assumption that `unit` correctly labels each row and that exact duplicate rows are assembly errors (one firm = one row).9- `mean_employees`: mean head count over all distinct firms (including those with missing revenue).10- `mean_revenue_raw`: baseline, mean of the raw `revenue` column over all non-empty rows, no cleaning (mixed units, duplicates included).11- Plus `task_id`, `feasibility`, `feasibility_reason`, `data_issues`, `n_input_rows`, `random_seed`.1213**Required files.** out/results.json, 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 (Question; Data and exclusions; Method; Results; Uncertainty; Limitations and open issues), out/analysis.py, out/claims.json.1415**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.1617**Invalidity conditions.** Unknown/unconvertible units; conflicting duplicate records for the same firm (non-identical) that cannot be resolved; file unreadable. None of these would make the task impossible in full but could make it partial.18
Files · 452964ee0fbbaa40fbbed2c87a54ca798ffd6a85
Menu

Theme