Use when running and reporting the analyses for a Comparative Political Studies (CPS) manuscript — estimation, uncertainty, robustness, and multi-method triangulation on comparative data. Sets analysis norms; it does not choose the identification strategy (see cps-research-design).
Scanned 9/5/2026
Install to Claude Code
npx -y skills add brycewang-stanford/Awesome-Journal-Skills --skill cps-data-analysis --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Cps Data Analysis?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/brycewang-stanford-cps-data-analysis)More formats (shields.io, HTML) on the badges page.
---
name: cps-data-analysis
description: Use when running and reporting the analyses for a Comparative Political Studies (CPS) manuscript — estimation, uncertainty, robustness, and multi-method triangulation on comparative data. Sets analysis norms; it does not choose the identification strategy (see cps-research-design).
---
# Data Analysis (cps-data-analysis)
Once the design is fixed (`cps-research-design`), this skill governs how the analyses are run and
reported so a CPS reviewer trusts them. Comparative data bring distinctive hazards: few clusters
(countries), cross-national measurement error, missing data that differ by regime, and the temptation to
over-read a panel correlation as causal. The standard is modern, transparent, and replication-ready.
## When to trigger
- Estimating the main results, robustness, and heterogeneity
- A reviewer questioned standard errors, specification, measurement, or fragility of the result
- Deciding what goes in the main text vs. the supplementary/online appendix
- Triangulating quantitative estimates with case evidence
## Analysis priorities (in order)
1. **Main estimate that matches the design.** The headline specification should be the one the
identification argument justifies — not the one with the biggest coefficient or most stars.
2. **Honest uncertainty.** Cluster at the assignment level (usually country / country-year); with few
countries use wild-cluster bootstrap or randomization inference. Report CIs, not just stars.
3. **Measurement transparency.** Name the source and coding of each comparative variable (e.g., V-Dem,
Polity, CSES, Manifesto Project); show robustness to alternative codings of the key construct.
4. **Robustness as a coherent story.** Alternative specifications, samples, codings, and estimators that
probe the *threats named in the design* — not a scattershot table of every variant.
5. **Heterogeneity by theory.** Subgroups/scope conditions pre-specified by the mechanism
(`cps-theory-building`), not data-mined; adjust for multiple comparisons.
6. **Mechanism evidence.** Tie the quantitative result to the mechanism — mediation cautiously, or case
evidence in a multi-method design.
## Comparative-data hazards to address explicitly
| Hazard | Symptom | Fix |
|--------|---------|-----|
| Few clusters (countries) | over-rejection, tiny SEs | wild-cluster bootstrap / randomization inference |
| Cross-national measurement error | results flip across codings | show robustness to V-Dem/Polity/alt scales |
| Differential missingness | sample changes by regime type | report attrition; multiple imputation with caution |
| Time-series confounding | spurious trend correlations | unit + period FE; over-time placebo |
## Failure-mode audit
Run this audit before interpreting the main coefficient:
- **Concept equivalence:** Does the key variable mean the same thing across regimes, languages, regions, or
institutions? If not, report measurement-invariance checks, alternative codings, or scope limits.
- **Selection into observation:** Are only more democratic, richer, more peaceful, or better-measured
cases observed? Report the observation process and show how estimates change under credible sample
restrictions.
- **Temporal dependence:** Are observations mechanically persistent across years? Use lag structure,
unit trends, event-time plots, or placebo leads to avoid re-labeling persistence as effect.
- **Cluster leverage:** Does one country, region, election, conflict, or reform episode drive the result?
Show leave-one-cluster-out or influence diagnostics for claims that hinge on few cases.
- **Subgroup multiplicity:** If theory predicts heterogeneity, pre-specify the dimensions and report how
many comparisons were examined.
The output should connect each failure mode to a design threat. Do not add a robustness table unless it
answers a named threat in `cps-research-design`.
## Execution bridge (StatsPAI / Stata MCP)
Run the battery, don't just enumerate it. Full map:
[`execution-with-mcp`](../../../shared-resources/empirical-methods/execution-with-mcp.md). CPS is comparative politics — cross-national and sub-national designs; emphasize identification and clustered / multiway inference.
- **Many outcomes / specifications:** `romano_wolf` (step-down FWER) or
`benjamini_hochberg` — report the adjusted threshold.
- **OVB sensitivity:** `oster_delta` / `sensemakr`.
- **Inference:** `wild_cluster_bootstrap` (few clusters), `twoway_cluster` / `conley`;
multilevel data → cluster at the right level.
- **Re-fit off one handle:** `audit_result(result_id)` lists the missing checks and the
exact `suggest_function` for each.
- **Exhibits:** `etable` / `did_summary_to_latex` from the handle — no retyped numbers.
Keep the decisive checks in the body and the exhaustive battery in the supplement. See
the executed chain in the [JF execution walkthrough](../../../Journal-of-Finance-Skills/resources/worked-examples/02-execution-walkthrough.md).
## Checklist
- [ ] Headline specification = the one the design justifies
- [ ] SEs clustered at the assignment level; few-cluster correction where needed
- [ ] Every comparative variable's source and coding named; key construct robust to alt codings
- [ ] Robustness probes the design's named threats; not a kitchen sink
- [ ] Heterogeneity pre-specified by theory; multiple testing addressed
- [ ] Main text vs. appendix split is deliberate; every appendix result is referenced
- [ ] All results reproduce from the script destined for the CPS Dataverse
## Anti-patterns
- Treating a cross-national panel correlation as causal without the design to back it
- Default OLS SEs with 20 countries (massively over-rejects)
- Cherry-picking the coding of the key variable that gives significance
- Robustness theater — many variants that never test the actual threat
- Data-mined subgroups reported as confirmed heterogeneity
- Results in the paper that the deposited code does not reproduce
## Output format
```
【Headline result】estimate + CI, with the design it rests on
【Inference】clustering level + few-cluster correction if any
【Measurement】sources/codings + alt-coding robustness
【Failure-mode audit】concept equivalence / observation selection / temporal dependence / cluster leverage / multiplicity
【Robustness】the design-threats probed
【Heterogeneity】theory-driven subgroups + multiple-testing fix
【Reproducible?】script regenerates every exhibit [Y/N]
【Next】cps-tables-figures
```
## Supplementary resources
- [`../../resources/code/`](../../resources/code/) — clean → estimate → robustness → tables skeleton (Stata + Python)
- [`../../resources/external_tools.md`](../../resources/external_tools.md) — estimation and inference packages (R / Stata / Python)
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!