본문으로 건너뛰기
cccskills
무료GitHub에 공개

eda-report

Run exploratory data analysis on a dataset and produce a structured report. Use when the user says "explore this dataset", "EDA on X", "analyze this data", "what's in this dataset", "summarize this data", "first look at the data", "understand this dataset before modeling", "data quality check", "describe this dataframe", or wants to understand a new dataset before building models or dashboards.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(1)

  • SKILL.md5.7 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Overview

Based on "Practical Statistics for Data Scientists" by Peter Bruce, Andrew Bruce, and Peter Gedeck. The core principle: before any modeling or analysis, you must understand the distribution, shape, and quality of your data. Skipping EDA leads to models trained on dirty data, misunderstood distributions, and insights that collapse under scrutiny. Structured EDA forces you to ask the right questions before committing to an approach.

Workflow

Step 1: Load and audit the dataset

Start with the basics - shape, types, and completeness.

import pandas as pd

df = pd.read_csv("data.csv")

print(f"Shape: {df.shape}")
print(f"\nDtypes:\n{df.dtypes}")
print(f"\nMissing values:\n{df.isnull().sum()}")
print(f"\nDuplicate rows: {df.duplicated().sum()}")

Document:

  • Row count and column count
  • Percentage of missing values per column (flag any column > 5% missing)
  • Columns with wrong inferred types (e.g., zip codes as integers)
  • Duplicate row count

Step 2: Profile each variable

Separate numeric from categorical. Apply the right summary stats to each.

Numeric columns:

df.describe(percentiles=[0.01, 0.25, 0.5, 0.75, 0.99])

Check: mean vs median spread (skew signal), min/max for outlier flags, p1 and p99 for tail behavior.

Categorical columns:

for col in df.select_dtypes("object").columns:
    print(f"{col}: {df[col].nunique()} unique | top: {df[col].value_counts().head(3).to_dict()}")

Check: cardinality (high cardinality = encoding decision needed), frequency of top values, presence of "unknown" / "other" / blank strings masking nulls.

Step 3: Visualize distributions

One plot per numeric column. Do not skip this step - summary stats hide bimodal distributions, spikes at round numbers, and data entry artifacts.

import matplotlib.pyplot as plt

df.hist(bins=30, figsize=(14, 10))
plt.tight_layout()
plt.savefig("distributions.png")

Flag columns that show:

  • Heavy skew (log-transform candidate)
  • Bimodal peaks (two subpopulations mixed)
  • Spikes at 0, -1, or 999 (sentinel values)
  • Values outside domain range (e.g., age = 200)

Step 4: Analyze relationships and correlation

Check pairwise correlations among numeric features. Identify multicollinearity before modeling.

import seaborn as sns

corr = df.select_dtypes("number").corr()
sns.heatmap(corr, annot=True, fmt=".2f", cmap="coolwarm")
plt.savefig("correlation_heatmap.png")

Flag:

  • Any pair with |r| > 0.85 (multicollinearity risk)
  • Target variable correlations (feature relevance signal)
  • Surprising zero-correlations where you expected a relationship

Step 5: Identify data quality issues and document decisions

Produce a written audit log. This is the deliverable, not just the charts.

For each issue found, record:

  • Column name
  • Issue type (missing, outlier, wrong type, duplicate, encoding ambiguity)
  • Prevalence (count and % of rows affected)
  • Recommended action (drop, impute, cap, flag, leave)

Example audit log format:

| Column       | Issue              | Rows Affected | Action          |
|--------------|-------------------|---------------|-----------------|
| income       | 3.2% missing       | 320 / 10,000  | Median impute   |
| zip_code     | Stored as float   | All           | Cast to string  |
| session_time | Max = 86,400 sec  | 12 rows       | Cap at 3,600    |

Step 6: Write the EDA summary

Structured output for stakeholders or the next analyst.

Sections to include:

  1. Dataset overview (rows, columns, time range if applicable)
  2. Target variable distribution (if supervised task)
  3. Key quality issues and planned treatments
  4. Notable patterns (correlations, subpopulations, outliers)
  5. Recommended next steps (feature engineering, additional data needed, modeling approach)

Keep the summary under 1 page. Charts go in the appendix.

Anti-Patterns

1. Skipping EDA and going straight to modeling Bad: Fitting a model on raw data, then debugging why predictions are wrong. Good: Spending 20% of project time on EDA. Problems found here are 10x cheaper to fix than after a model is built.

2. Reporting only means and standard deviations Bad: "Average age = 34.2, std = 12.1" Good: Include percentiles and a histogram. A mean of 34 with a bimodal distribution at 18 and 55 tells a completely different story.

3. Treating "unknown" strings as valid values Bad: Including "unknown", "N/A", "-", and "" as distinct categories. Good: Standardize all null representations to NaN before profiling. Write a null-normalization function and run it first.

4. EDA with no documented decisions Bad: Exploring data in a notebook but not recording what you found or what you plan to do about it. Good: Every issue gets a row in the audit log with a decision. The audit log is a first-class deliverable.

Quality Checklist

  • Row count, column count, and missing value percentages documented
  • Every numeric column has descriptive stats including p1, p25, p75, p99
  • Every categorical column has cardinality and top-value frequency
  • Distribution plots generated for all numeric columns
  • Correlation heatmap produced and high-correlation pairs flagged
  • Audit log written with issue, prevalence, and action for each finding
  • EDA summary written with recommended next steps

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Rate any product, feature, or experience on the 11-star scale (Brian Chesky's Airbnb thought experiment). Use when user says "rate this experience", "11-star", "star rating", "experience audit", "how good is this", "experience rating", "product audit", "quality assessment", or wants to evaluate product quality and identify improvement paths. Also trigger when user wants to benchmark a feature, assess where a product stands, or map out what "great" looks like - even if they don't explicitly say "11-star".

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

qa-aman/claude-skills212026년 10월 19일 업데이트

Generate A/B copy variants grounded in Eugene Schwartz's awareness and market-sophistication stages and John Caples' tested-headline discipline. Every variant declares its angle, the awareness stage it targets, and a falsifiable hypothesis, and the skill recommends which pair to test first and what delta counts as signal. Use when the user says "A/B test this", "write variants", "give me options", "test different angles", "copy variants", "ab copy", "test this headline", "multiple versions", "which version is better", or wants to test copy before publishing. For reviewing copy that already exists, see copy-review. For sample size and stopping rules, see growth-experiment. For diagnosing a page rather than its words, see page-cro. For full paid ad sets by platform, see ad-campaign-writer.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

qa-aman/claude-skills212026년 10월 19일 업데이트

Design statistically rigorous experiments to test data science hypotheses. Use when the user says "design an A/B test", "run an experiment", "test this hypothesis", "is this difference significant", "how many samples do I need", "randomized controlled trial", "causal inference", "uplift test", "holdout group", "significance test", "power calculation", "avoid p-hacking", or needs to determine whether an observed effect is real before making a product or model decision. For lean build-measure-learn product experiments without the statistics, use experiment-design instead.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

qa-aman/claude-skills212026년 10월 19일 업데이트

Write measurable acceptance criteria for requirements or user stories. Use when the user says "write acceptance criteria", "definition of done", "how do we test this", "fit criteria", "given when then", "Gherkin scenarios", "what does done look like", "testable conditions", "how will we know this works" - even if they don't explicitly say "acceptance criteria".

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

qa-aman/claude-skills212026년 10월 19일 업데이트

Build a strategic account plan for winning, retaining, or expanding a named account. Use when the user says "build an account plan", "strategic account planning", "how do I grow this account", "account expansion strategy", "whitespace analysis", "QBR prep", "key account review", "map the stakeholders in this account", "land and expand plan", "how do I break into [company]", or wants a structured strategy for a specific account.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

qa-aman/claude-skills212026년 10월 19일 업데이트

Write paid ad copy for LinkedIn, Google, Meta, and YouTube. Produces multiple variants per platform, each targeting a different Eugene Schwartz awareness level and Cialdini persuasion principle. Use when the user asks for ad copy, ad variants, "write LinkedIn ads", Google ads, Meta ads, paid social copy, ad headlines, or wants creative for a paid campaign. Reads brand voice, ICP, and positioning from knowledge/. For organic social posts, see linkedin-post or social-calendar. For the landing page the ad points at, see landing-page-writer. For testing variants, see ab-copy-writer.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

qa-aman/claude-skills212026년 10월 19일 업데이트

qa-aman의 스킬 모두 보기

이 스킬의 문제 신고