agentleFS
Baba01hacker666Baba01hacker666/dummyskills/skills/tabular-analyzer/SKILL.md

tabular-analyzer

Skill0 starsChanged 2 months agoMITView on GitHub

Calculates descriptive metrics and distributions from small tabular datasets without speculative inferences.

The file

We split this skill into the rules it gives an agent

10 rules. About 0 are common, 5 are distinctive, and 5 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈5

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 5

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Use this skill when:

    line 14
  2. Very specific:

    Do not use to validate CSV schema rules.

    line 20
  3. Very specific:

    Do not use to extract isolated key-value pairs.

    line 21
  4. Very specific:

    If table_data is empty: stop and ask: "Please provide the table or data rows."

    line 28
  5. Very specific:

    If table_data has fewer than 2 rows: state "Insufficient sample size (fewer than 2 rows)."

    line 29
  6. Distinctive:

    Never invent synthetic data to pad the table.

    line 30
  7. Distinctive:

    Follow these numbered actions:

    line 33
  8. Very specific:

    If non-numeric strings appear in a numeric column: count them as Invalid / NaN and report the error rate.

    line 46
  9. Distinctive:

    Never state "this trend proves X" without statistical significance testing.

    line 47
  10. Distinctive:

    Stop and ask the user when:

    line 86

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Tabular Analyzer

Analyzes small tabular datasets (CSV, TSV, or Markdown tables) to compute objective descriptive metrics: row counts, distinct values, null percentages, min/max, and averages.

1. Purpose

Provide exact numerical facts about a dataset. "Descriptive analysis" means calculating observable statistical metrics without drawing unproven causal theories.

2. When to Use

Use this skill when:

  • Analyzing test metrics, API latency logs, sales tables, or bug reports.
  • Checking data quality and null rates in small tables (< 5,000 rows).
  • User requests: "Analyze this table" or "Give me summary statistics".

3. When Not to Use

  • Do not use to validate CSV schema rules; use csv-validator.
  • Do not use to extract isolated key-value pairs; use field-extractor.

4. Required Inputs

  • table_data: CSV text or markdown table containing columns and rows.
  • numeric_columns: Target columns to compute mathematical statistics on.

5. Missing-Input Behavior

  1. If table_data is empty: stop and ask: "Please provide the table or data rows."
  2. If table_data has fewer than 2 rows: state "Insufficient sample size (fewer than 2 rows)."
  3. Never invent synthetic data to pad the table.

6. Procedure

Follow these numbered actions:

  1. Action 1: Calculate Dimensions
    • Count total rows and list all column names.
  2. Action 2: Calculate Data Quality Metrics
    • For each column, count null/empty cells and compute null percentage.
  3. Action 3: Calculate Numeric Metrics
    • For numeric columns: calculate Min, Max, and Mean (Sum / Count).
  4. Action 4: Calculate Categorical Distributions
    • For string columns with <= 5 unique values: list frequency count per category.
  5. Action 5: Emit Analysis Report
    • Format using Section 8.

7. Decision Rules

  • If non-numeric strings appear in a numeric column: count them as Invalid / NaN and report the error rate.
  • Never state "this trend proves X" without statistical significance testing; describe only observable facts.

8. Output Format

Emit the analysis using this template:

### Tabular Analysis Report

- **Total Rows**: [Count]
- **Total Columns**: [Count]

#### Column Quality Metrics
| Column | Data Type | Null Count | Null % | Unique Values |
| :--- | :--- | :--- | :--- | :--- |
| `[col1]` | Integer | 0 | 0.0% | [Count] |
| `[col2]` | String | 2 | 4.0% | [Count] |

#### Numerical Summary
| Column | Min | Max | Mean | Notes |
| :--- | :--- | :--- | :--- | :--- |
| `[num_col]` | [Min] | [Max] | [Mean] | [Clean data] |

#### Observational Summary
- [Objective observation 1 with exact numbers]
- [Objective observation 2]

9. Verification Checklist

  • Row and column counts match data exactly.
  • Means are calculated accurately (sum / count).
  • No speculative or unproven inferences were added.
  • Null percentages are correctly computed.

10. Common Failures and Recovery

Failure SymptomCauseRecovery Action
Math calculation errorsMental arithmetic failureWrite explicit step-by-step arithmetic check before output.
Speculative extrapolationAsserting causal relationshipRephrase to state observed correlation or metric only.

11. Stop or Escalation Conditions

Stop and ask the user when:

  • Dataset contains corrupted binary or unaligned columns.

12. Examples

Example 1: Successful Execution

Input:

Table:
id,latency_ms,status
1,120,200
2,150,200
3,300,500
4,110,200

Output:

### Tabular Analysis Report

- **Total Rows**: 4
- **Total Columns**: 3

#### Column Quality Metrics
| Column | Data Type | Null Count | Null % | Unique Values |
| :--- | :--- | :--- | :--- | :--- |
| `id` | Integer | 0 | 0.0% | 4 |
| `latency_ms` | Integer | 0 | 0.0% | 4 |
| `status` | Integer | 0 | 0.0% | 2 |

#### Numerical Summary
| Column | Min | Max | Mean | Notes |
| :--- | :--- | :--- | :--- | :--- |
| `latency_ms` | 110 | 300 | 170.0 | Outlier at 300 ms on row 3 |

#### Observational Summary
- 3 out of 4 requests (75%) returned HTTP 200.
- 1 request (25%) returned HTTP 500 with the highest observed latency (300 ms).

Example 2: Ambiguous or Missing Input

Input:

Table:
(Only header row: id,name)

Output:

### Tabular Analysis Report: Insufficient Data

- **Total Rows**: 0 (Header only)
- **Total Columns**: 2

Cannot compute statistics on an empty table. Please provide at least 2 rows of data.

Example 3: Expected Final Output

Output:

### Tabular Analysis Report

- **Total Rows**: 3
- **Total Columns**: 2

#### Numerical Summary
| Column | Min | Max | Mean | Notes |
| :--- | :--- | :--- | :--- | :--- |
| `score` | 80 | 100 | 90.0 | All scores positive |

#### Observational Summary
- Mean score is 90.0 across 3 records.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.