| name | eda |
| description | Exploratory data analysis |
| license | MIT |
| compatibility | opencode |
| metadata | {"audience":"data-analysts","category":"data-science"} |
What I do
- Explore datasets to understand structure
- Identify patterns and relationships
- Detect anomalies and outliers
- Generate summary statistics
- Create visualizations for data understanding
- Form and test hypotheses
- Guide feature selection for modeling
When to use me
Use me when:
- Starting a new data analysis project
- Understanding data before modeling
- Identifying data quality issues
- Discovering patterns in data
- Preparing for feature engineering
Key Concepts
EDA Process
- Data Collection: Load and understand data
- Data Description: Summary statistics
- Data Cleaning: Handle missing, outliers
- Univariate Analysis: Single variable patterns
- Bivariate Analysis: Relationships between variables
- Multivariate Analysis: Complex relationships
Python EDA Example
import pandas as pd
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt
df = pd.read_csv("data.csv")
print(df.describe())
print(df.dtypes)
print(df.isnull().sum())
fig, axes = plt.subplots(2, 2, figsize=(12, 10))
sns.histplot(df["age"], kde=True, ax=axes[0, 0])
sns.boxplot(x="income", y="education", data=df, ax=axes[0, 1])
corr = df.select_dtypes(include=[np.number]).corr()
sns.heatmap(corr, annot=True, cmap="coolwarm", ax=axes[1, 0])
sns.regplot(x="age", y="income", data=df, ax=axes[1, 1])
plt.tight_layout()
plt.show()
print(df["category"].value_counts())
print(pd.crosstab(df["category"], df["outcome"]))
Key Metrics
- Central tendency: Mean, median, mode
- Spread: Std dev, variance, IQR
- Shape: Skewness, kurtosis
- Correlation: Pearson, Spearman