skills/54-scdenney-open-science-skills/skills/tables/SKILL.md
Design and format publication-quality tables: column order, row grouping, notes, precision, reproducibility.
npx skillsauth add brycewang-stanford/Awesome-Agent-Skills-for-Empirical-Research tablesInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
This is an original Open Science Skills workflow for table production in social-science manuscripts. It is general — apply to descriptive tables, regression tables, balance tables, and summary tables across any method. For tables whose interpretation depends on method-specific standards, also consult the relevant sibling skill (conjoint-design, conjoint-diagnostics, list-experiment, topic-modeling, text-classification, vlm-ocr-pipeline). For end-stage QA on a finished table set, hand off to figure-table-audit.
Tables are for precise reading. A good table is one where the relevant comparison can be made without arithmetic, and where every number that appears in the manuscript text can be traced back to a specific cell. If readers have to do mental subtraction to recover the substantive quantity, the table is the wrong shape.
Tables are for reading values; figures are for seeing patterns. Use a table when:
Use a figure when the substantive claim is a pattern — a slope, a non-monotonicity, a difference of differences. Many regression tables in social science would be more readable as coefficient plots with a small accompanying summary table.
Write down, in one sentence, what the table is supposed to let the reader compare. The first column or first panel should anchor that comparison. Examples:
If the comparison is not clear, the table will read as a coefficient dump.
Columns should mirror how the text walks the reader through the result:
stargazer/modelsummary defaults dictate the order if it obscures the comparison — pass models in argument order that matches the manuscript.(in parentheses) OR confidence intervals [in brackets] — pick one convention and use it everywhere. Note the convention in the table notes.*, **, ***) are conventional but not required; if used, define thresholds in the notes consistently across tables.A reader should be able to understand the table from title + notes alone. Title should name the estimand or model family, not just "Results."
Notes should specify:
modelsummary, stargazer, gt, huxtable, or kable (R); stargazer or pystout (Python); esttab (Stata) — whichever fits the workflow.\Sexpr{} (knitr/Sweave), inline R/Python in Quarto, or LaTeX \input{} of generated .tex fragments. Do not retype numbers from tables into prose.\toprule, \midrule, \bottomrule) or equivalent rules are used — no vertical rules between columns in academic tables.Treat here and Treatment_1 there).When asked to design or revise a table, produce:
# Table Plan
Comparison: <one sentence>
Estimand / model family: <what is being estimated>
Column order: <what each column shows, why this order>
Row grouping: <treatment block / covariate block / FE / fit stats>
Precision and uncertainty: <decimals, SE vs CI, star thresholds>
Title: <names the estimand or model family>
Notes draft: <DV, coding, controls, FE, clustering, weights, N source, stars>
Reproducibility: <package, script path, output format>
Open issues: <anything that needs author input>
When asked to produce code, default to a modelsummary or gt script (R) or stargazer/pystout (Python), with model objects passed in the order the manuscript discusses them.
figure-table-audit once the table set is stable.tools
Autonomous multi-round research review loop using MiniMax API. Use when you want to use MiniMax instead of Codex MCP for external review. Trigger with "auto review loop minimax" or "minimax review".
tools
Autonomous research review loop using any OpenAI-compatible LLM API. Configure via llm-chat MCP server or environment variables. Trigger with "auto review loop llm" or "llm review".
tools
Autonomous multi-round research review loop using MiniMax API. Use when you want to use MiniMax instead of Codex MCP for external review. Trigger with "auto review loop minimax" or "minimax review".
tools
Autonomous research review loop using any OpenAI-compatible LLM API. Configure via llm-chat MCP server or environment variables. Trigger with "auto review loop llm" or "llm review".