Agent skill

data-analysis

Loads CSV, Excel, and JSON data files, performs statistical analysis, and generates charts and reports. Use when the user asks to analyze a dataset, compute statistics, create visualizations, find trends, or produce a data report.

Stars 247
Forks 29

Install this agent skill to your Project

npx add-skill https://github.com/0xranx/golembot/tree/main/templates/data-analyst/skills/data-analysis

SKILL.md

Data Analysis Skill

Process data files in the data/ directory, perform analysis, and output reports to reports/.

Step-by-Step Workflow

  1. Identify the data source — List available files and confirm with the user which to analyze:
bash
ls data/
  1. Load and inspect the data — Use Python to read the file and show a summary:
python
import pandas as pd

df = pd.read_csv("data/sales.csv")  # or read_excel / read_json
print(f"Shape: {df.shape}")
print(f"Columns: {list(df.columns)}")
print(df.dtypes)
print(df.describe())
print(f"Missing values:\n{df.isnull().sum()}")
  1. Clean the data — Handle missing values, fix types, remove duplicates:
python
df = df.drop_duplicates()
df["date"] = pd.to_datetime(df["date"], errors="coerce")
df["amount"] = pd.to_numeric(df["amount"], errors="coerce")
df = df.dropna(subset=["date", "amount"])
print(f"Clean shape: {df.shape}")
  1. Analyze — Compute the requested statistics or aggregations:
python
# Example: monthly revenue trend
monthly = df.groupby(df["date"].dt.to_period("M"))["amount"].sum()
print(monthly)

# Example: correlation matrix
print(df[["amount", "quantity", "discount"]].corr())
  1. Visualize — Generate charts and save to reports/:
python
import matplotlib
matplotlib.use("Agg")
import matplotlib.pyplot as plt

monthly.plot(kind="bar", title="Monthly Revenue")
plt.tight_layout()
plt.savefig("reports/monthly_revenue.png", dpi=150)
plt.close()
print("Chart saved to reports/monthly_revenue.png")
  1. Write the report — Save a Markdown report to reports/:
python
with open("reports/analysis_report.md", "w") as f:
    f.write("# Analysis Report\n\n")
    f.write("## Summary\n")
    f.write(f"- Total records: {len(df)}\n")
    f.write(f"- Date range: {df['date'].min()} to {df['date'].max()}\n")
    f.write(f"- Total revenue: {df['amount'].sum():,.2f}\n\n")
    f.write("## Charts\n")
    f.write("![Monthly Revenue](monthly_revenue.png)\n")
print("Report saved to reports/analysis_report.md")

Validation Checkpoints

After each step, verify before proceeding:

  • After loading: confirm row count and column names are plausible
  • After cleaning: check that no critical data was dropped unexpectedly (compare row counts)
  • After analysis: sanity-check totals and aggregations (e.g., no negative counts)
  • After saving: confirm output files exist with ls reports/

Using calc.py

For complex or specialized calculations, use the calc.py helper script:

bash
python calc.py --input data/sales.csv --operation regression --output reports/regression.json

Output Format

Analysis reports should follow this structure:

# [Analysis Topic] Report

## Summary
- Key finding 1
- Key finding 2

## Data Overview
- Records: N rows
- Time range: ...

## Detailed Analysis
...

## Recommendations
...

Expand your agent's capabilities with these related and highly-rated skills.

0xranx/golembot

code-review

Reviews code changes, pull requests, and diffs for correctness, security, performance, and style. Use when the user submits a PR for review, asks to review a diff or code snippet, or requests a quality check on recent changes.

247 29
Explore
0xranx/golembot

meeting

Meeting notes assistant — organizes transcripts into structured minutes, extracts action items, and tracks attendee decisions. Use when the user asks to summarize a meeting, take meeting notes, write up minutes, create a meeting recap, list attendees, or extract action items from a call.

247 29
Explore
0xranx/golembot

ops

Content operations assistant — drafts blog posts, social media copy, and marketing materials, compiles data briefings, and tracks competitor activity. Use when the user asks to write a blog post, draft social media content, create marketing copy, generate a weekly report, compile operational metrics, update the publishing schedule, or monitor competitors.

247 29
Explore
0xranx/golembot

research

Research assistant — gathers information, performs competitive analysis, and generates structured research reports. Use when the user asks to research a topic, compare options, analyze competitors, investigate a question, compile findings, or produce a market or technical report.

247 29
Explore
0xranx/golembot

faq-support

Answers common customer questions from a knowledge base and escalates to a human agent when unable to help. Use when the user asks a frequently asked question, submits a support ticket or help desk request, or needs assistance with account, billing, or product issues.

247 29
Explore
0xranx/golembot

coder

Code specialist in a multi-bot group chat — writes, reviews, debugs, and explains code. Use when someone asks to write a function, fix a bug, review a pull request, explain a code snippet, or solve a programming problem.

247 29
Explore

Didn't find tool you were looking for?

Be as detailed as possible for better results