PluginBench
Skill
Pass
Audit score 90

table-generation

lingzhi227/agent-research-skills

Generate publication-quality LaTeX tables from experimental results with booktabs styling and bold best results.

What is table-generation?

Converts JSON/CSV experimental data into LaTeX tables formatted for academic papers. Supports comparison, ablation, and descriptive table types with automatic best-result highlighting, multi-row layouts, and proper captions. Use when preparing result tables for research papers or technical documents.

  • Convert JSON/CSV data to booktabs-styled LaTeX tables
  • Automatically bold best results in each column with optional second-best underlining
  • Generate comparison tables (methods × metrics), ablation tables (variants × metrics), and descriptive tables
  • Support multi-row layouts with \multirow for method categories and component grouping
  • Include mean ± std formatting and p-value significance stars
  • Add captions, labels, and table notes via threeparttable environment

How to install table-generation

npx skills add https://github.com/lingzhi227/agent-research-skills --skill table-generation
Prerequisites
  • Python with pandas or JSON/CSV parsing capability
  • LaTeX packages: booktabs, multirow, multicol, threeparttable
  • Experimental results in JSON or CSV format
Claude Code
Cursor
Windsurf
Cline

How to use table-generation

  1. 1.Prepare your experimental data in JSON or CSV format with methods/variants as rows and metrics as columns
  2. 2.Run the table-generation script with --input pointing to your data file, --type specifying table kind (comparison/ablation/descriptive/custom), and --caption with your table title
  3. 3.Specify --bold-best max or min depending on metric direction, and optionally add --underline-second for second-best highlighting
  4. 4.Copy the generated LaTeX code into your document preamble (ensure required packages are included) and paste the table environment into your results section
  5. 5.Verify all numbers match your source data and adjust column alignment or notes as needed

Use cases

Good for
  • Create main results comparison table showing baseline and proposed method performance across datasets
  • Generate ablation study table documenting impact of removing each model component
  • Produce dataset statistics or hyperparameter summary table for appendix
  • Format multi-dataset evaluation table with methods as rows and dataset×metric combinations as columns
  • Build custom table layouts with user-specified structure and content
Who it's for
  • Researchers writing machine learning or NLP papers
  • Scientists preparing experimental results for publication
  • Graduate students creating thesis tables and figures
  • Anyone generating LaTeX tables from structured experimental data

table-generation FAQ

What data format does table-generation accept?

JSON files and CSV files. Data should have methods/variants as rows and metrics/datasets as columns. The script parses both formats automatically.

Can I highlight second-best results?

Yes, use the --underline-second flag to underline second-best results in each column. Best results are always bolded by default.

How do I add statistical significance indicators?

Use the --significance flag to add p-value stars (*, **, ***) to results when p-values are included in your data.

What LaTeX packages must I include?

Your document preamble must include: \usepackage{booktabs}, \usepackage{multirow}, \usepackage{multicol}, and \usepackage{threeparttable}.

Can I create wide tables for two-column documents?

Yes, the script generates table* environments for wide tables. Use this for multi-dataset layouts that span both columns.

Full instructions (SKILL.md)

Source of truth, from lingzhi227/agent-research-skills.


name: table-generation description: Generate publication-quality LaTeX tables from experimental results. Convert JSON/CSV data to booktabs-styled tables with bold best results, multi-row layouts, and proper captions. Use when creating result tables, comparison tables, or ablation tables for papers. argument-hint: [data-source]

Table Generation

Convert experimental results into publication-ready LaTeX tables.

Input

  • $0 — Table type: comparison, ablation, descriptive, custom
  • $1 — Data source: JSON file, CSV file, or inline data

Scripts

Generate LaTeX table from JSON/CSV

python ~/.claude/skills/table-generation/scripts/results_to_table.py \
  --input results.json --type comparison \
  --bold-best max --caption "Performance comparison" \
  --label tab:main_results

Supports: comparison, ablation, descriptive, multi-dataset table types. Additional flags: --type multi-dataset for methods x datasets x metrics layout, --significance for p-value stars, --underline-second for second-best results.

References

  • LaTeX table templates and examples: ~/.claude/skills/table-generation/references/table-templates.md

Table Types

comparison — Main results table

  • Rows = methods (baselines + ours), Columns = metrics/datasets
  • Bold the best result in each column
  • Include mean +/- std when available
  • Use \multirow for method categories (Supervised, Self-supervised, etc.)

ablation — Ablation study table

  • Rows = variants (full model, minus component A, minus component B, ...)
  • Columns = metrics
  • Bold the full model result
  • Use checkmarks for component presence

descriptive — Dataset/statistics table

  • Dataset characteristics, hyperparameters, or summary statistics
  • Clean formatting with proper units

custom — Free-form table

  • User specifies layout and content

Required Packages

\usepackage{booktabs}    % \toprule, \midrule, \bottomrule
\usepackage{multirow}    % \multirow
\usepackage{multicol}    % multi-column layouts
\usepackage{threeparttable}  % table notes

Output Format

Always generate tables with:

  1. booktabs rules (\toprule, \midrule, \bottomrule)
  2. \caption{} and \label{tab:...}
  3. Bold best results using \textbf{}
  4. Table notes via threeparttable when needed
  5. Proper alignment (l for text, c or r for numbers)

Rules

  • Only include numbers from actual experimental logs — never hallucinate results
  • All numbers must match the data source exactly
  • Use $\pm$ for standard deviations
  • Use \underline{} for second-best results when appropriate
  • Keep tables compact — avoid unnecessary columns
  • Use table* for wide tables spanning two columns
  • Add glossary/notes for abbreviated column headers

Related Skills

  • Upstream: data-analysis, experiment-code
  • Downstream: paper-writing-section, paper-compilation
  • See also: figure-generation