agentsclimarketplace

Publication output

Skill brycewang-stanford/Auto-Empirical-Research-Skills/skills/11-James-Traina-compound-science/skills/publication-output

This skill covers publication-quality tables and figures for academic research papers. Use when formatting regression results, summary statistics, Monte Carlo output, or research visualizations for LaTeX inclusion. Triggers on "table", "figure", "tabulate", "stargazer", "publication-ready", "LaTeX table", "event study plot", "coefficient plot", "RD plot", "power curve", "specification curve", "binscatter", "format results", "booktabs".From its SKILL.md

Install
npx -y skills add brycewang-stanford/Auto-Empirical-Research-Skills --skill publication-output

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.

SKILL.md

7.7 KB, ~1.8k tokens by cl100k_base, as published. Nobody here has run it

Publication Output

Generate publication-quality tables and figures for academic research papers. Routes to the appropriate output type based on content, applies standard academic formatting conventions, and produces files ready for LaTeX inclusion.

When to Use

Skip when:

  • The task is choosing an empirical method or running estimation (use empirical-playbook or causal-inference skill)
  • The task is journal submission logistics or referee responses (use submission-guide skill)
  • Results are exploratory and not yet ready for formatted output (finish estimation first)

Use when:

  • After estimation: format regression results, diagnostics, or robustness checks into tables
  • After simulation: format Monte Carlo results (bias, RMSE, coverage) into comparison tables
  • For descriptive work: summary statistics, balance tables, transition matrices
  • For visualization: event studies, RD plots, coefficient plots, power curves, densities, specification curves

Output Type Router

Content typeOutputReference
Regression results (coefficients, SEs, R², N)Stargazer-style coefficient tablereferences/table-generation.md
Summary statistics (means, SDs, quantiles)Descriptive statistics panelreferences/table-generation.md
Monte Carlo output (bias, RMSE, coverage)Simulation results tablereferences/table-generation.md
Balance / covariate comparisonBalance table with normalized differencesreferences/table-generation.md
Transition probabilitiesMatrix with row/column labelsreferences/table-generation.md
First-stage IV resultsFirst-stage regression tablereferences/table-generation.md
Time-relative coefficients (leads/lags)Event study plotreferences/figure-generation.md
Running variable + cutoffRD plot with local polynomialreferences/figure-generation.md
Multiple estimates with CIsCoefficient comparison plotreferences/figure-generation.md
Sample sizes × effect sizesPower curvereferences/figure-generation.md
Group distributionsDensity / kernel density plotreferences/figure-generation.md
Two continuous variablesBinned scatter plotreferences/figure-generation.md
Sorted estimates + indicator matrixSpecification curvereferences/figure-generation.md

Format Defaults

Tables

SettingDefault
FormatLaTeX (booktabs: \toprule, \midrule, \bottomrule)
StarsOn coefficients, never on SEs (* p<0.10, ** p<0.05, *** p<0.01)
SEsIn parentheses, directly below coefficient
Decimal alignmentAll numbers in a column align at decimal point
Fixed effectsYes/No indicator rows, not coefficient rows
Negative numbersMinus sign (economics convention), not parentheses
File locationtables/<descriptive-name>.tex
Label formattab:<name>

Figures

SettingDefault
FontSerif (Computer Modern / Times), 11-12pt labels
Size6.5" × 4.5" (single column), 13" × 4.5" (two-panel)
DPIVector (PDF) primary, 300 DPI PNG secondary
StyleWhite background, no gridlines, bottom+left axes only
ColorGrayscale-friendly with distinct markers and line styles
ColorblindOkabe-Ito or ColorBrewer Set2 when color is used
File locationfigures/<descriptive-name>.pdf + .png
Label formatfig:<name>

Language-Specific Packages

LanguageTablesFigures
Pythonpandas, stargazer, pystout, tabulatematplotlib + seaborn
Rstargazer, modelsummary, kableExtra, gt, tinytable, fixest::etable()ggplot2, coefplot, binsreg
JuliaPrettyTables.jl, Latexify.jlPlots.jl, Makie.jl
Stataesttab, outreg2, estouttwoway, coefplot, binscatter

Package notes:

  • pystout (Python) — estout-style regression tables for statsmodels and linearmodels (OLS, IV2SLS, PanelOLS). Supports mgroups for column grouping, modstat for custom statistics rows.
  • tinytable (R) — lightweight, native Typst support, used as modelsummary backend.
  • fixest::etable() (R) — direct from estimation, handles multi-way FE notation automatically.

Automated vs semi-automated tradeoff: Automated tools (esttab, stargazer) are quick but hard to customize. Semi-automated tools (save intermediates, generate LaTeX separately) are harder to start but easier to customize. Costs are convex for automated, concave for semi-automated.

Quarto+Typst: Quarto with Typst backend offers sub-second compilation for iterative work. Use keep-tex: true for journal submission when you need the raw LaTeX output.

Multi-Panel Assembly

Tables and figures often require multi-panel layouts:

PatternTable panelsFigure layout
Multiple outcomesPanel A/B/C by outcome1×2 or 1×3 side-by-side
Multiple samplesPanel by subsample2×1 stacked
Multiple methodsPanel by estimator (OLS/IV/GMM)2×2 grid
Robustness variantsColumns within one panel2×3 grid
Event study + pre-trends2×1 stacked (estimates + test)

Ensure consistent axis scales, font sizes, and formatting across panels. Label panels as (a), (b), (c) or Panel A, Panel B, Panel C.

Quick Examples

Python: Regression Table

import pandas as pd
from stargazer.stargazer import Stargazer
from linearmodels.iv import IV2SLS

# Format results with stargazer
stargazer = Stargazer([ols_result, iv_result])
stargazer.custom_columns(["OLS", "IV/2SLS"])
stargazer.show_model_numbers(False)
stargazer.significant_digits(3)
with open("tables/main-results.tex", "w") as f:
    f.write(stargazer.render_latex())

Python: Event Study Plot

import matplotlib.pyplot as plt
import matplotlib

matplotlib.rcParams.update({"font.family": "serif", "font.size": 11})
fig, ax = plt.subplots(figsize=(6.5, 4.5))
ax.errorbar(leads_lags, coefficients, yerr=1.96 * se, fmt="o-", color="black", capsize=3)
ax.axhline(y=0, color="gray", linestyle="--", linewidth=0.8)
ax.axvline(x=-0.5, color="red", linestyle=":", linewidth=0.8)
ax.set_xlabel("Periods relative to treatment")
ax.set_ylabel("Coefficient estimate")
ax.spines[["top", "right"]].set_visible(False)
fig.savefig("figures/event-study.pdf", bbox_inches="tight")

Quality Checklist

Before finalizing any output:

  • Decimal alignment consistent within each column
  • Stars attached to coefficients only (never to SEs)
  • SE format consistent throughout (parentheses or brackets, not mixed)
  • Sample sizes sum correctly across panels
  • Column/axis labels clear and unambiguous
  • Significance note present if stars used
  • LaTeX compiles without errors
  • Figures readable in grayscale (B&W print)
  • No default titles on figures (titles go in \caption)
  • All information encoded in color also encoded in shape/line style

Integration with Other Components

  • econometric-reviewer agent preloads this skill to audit tables against code output
  • econometric-reviewer may request formatted output during /workflows:review
  • /workflows:compound captures table/figure templates into docs/solutions/
  • Companion outputs: regression table → summary statistics table; event study → pre-trend test figure

What ships with it: 2 files

27.7 KB alongside SKILL.md

Keep looking

Skills are one crate of 326,144. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.