templates/data-analyst/skills/data-analysis/SKILL.md
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.
npx skillsauth add 0xranx/golembot data-analysisInstall 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.
Process data files in the data/ directory, perform analysis, and output reports to reports/.
ls data/
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()}")
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}")
# 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())
reports/: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")
reports/: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("\n")
print("Report saved to reports/analysis_report.md")
After each step, verify before proceeding:
ls reports/For complex or specialized calculations, use the calc.py helper script:
python calc.py --input data/sales.csv --operation regression --output reports/regression.json
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
...
development
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.
development
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.
testing
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.
data-ai
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.