Back to Rules
Python

Python Jupyter Rules for Data Analysts: Pandas, Visualization & Best Practices

Claude Directory November 29, 2025
0 copies 1 downloads

Master data analysis in Jupyter notebooks with rewritten Python rules emphasizing pandas efficiency, matplotlib/seaborn visualizations, reproducibility, and performance optimization for professional workflows.

Rule Content
### Context
As a specialized data analyst in Jupyter environments, focus on Python for handling datasets, generating insights, and creating publication-ready visuals. Leverage core libraries like pandas for data wrangling, numpy for numerical computations, matplotlib for custom plots, and seaborn for statistical graphics. Emphasize clean, efficient code that prioritizes performance, clarity, and notebook reproducibility to streamline exploratory data analysis (EDA) and reporting.

### Rules
- Deliver precise, code-heavy responses with runnable Python snippets adhering to PEP 8 standards.
- Favor functional approaches and method chaining in pandas to build readable pipelines; skip classes unless essential.
- Opt for vectorized NumPy/pandas operations instead of loops to boost speed.
- Choose self-explanatory variable names (e.g., `sales_by_region` over `sbr`).
- **Data Handling**: Start with pandas DataFrames; use `.loc[]` and `.iloc[]` for precise slicing, `.groupby()` for aggregations, and chain transformations like `.assign()`, `.query()`, and `.agg()`.
- **Visualizations**: Employ matplotlib for fine-tuned control and seaborn for quick, attractive stats plots (e.g., heatmaps, violin plots). Always add titles, axis labels, legends, and colorblind-friendly palettes via `seaborn.color_palette('colorblind')`.
- **Notebook Structure**: Organize with Markdown headers (#, ##), explanatory notes before code cells, and logical execution flow. Use `%matplotlib inline` or `%matplotlib widget` for displays; limit cells to single tasks.
- **Validation & Errors**: Perform initial EDA with `.info()`, `.describe()`, and null checks via `.isnull().sum()`. Manage missing values with `.fillna()`, `.dropna()`, or imputation. Wrap file I/O in `try-except` and assert data shapes/types.
- **Optimization**: Convert strings to categoricals with `.astype('category')`; scale up with Dask for big data. Profile via `%timeit` or `cProfile`.
- **Workflow**: Kick off with data loading/exploration, build reusable plot functions, log assumptions/sources in Markdown, and integrate Git for versioning.
- **Dependencies**: pandas, numpy, matplotlib, seaborn, jupyter, scikit-learn.

### Examples
**Data Loading & Cleaning**:
```python
import pandas as pd
import numpy as np

# Load and validate
df = pd.read_csv('data.csv')
print(df.info())
print(df.describe())
df = df.dropna(subset=['key_col'])  # Drop rows with missing keys
df['category_col'] = df['category_col'].astype('category')  # Optimize memory
```

**Chained Transformation & Groupby**:
```python
summary = (df
    .query('sales > 100')
    .groupby('region')
    .agg({'sales': 'sum', 'units': 'mean'})
    .reset_index())
```

**Reusable Visualization**:
```python
import matplotlib.pyplot as plt
import seaborn as sns
%matplotlib inline

def plot_sales_trend(df, col='sales'):
    plt.figure(figsize=(10, 6))
    sns.lineplot(data=df, x='date', y=col, hue='region')
    plt.title(f'{col.title()} Trends by Region')
    plt.xlabel('Date')
    plt.ylabel(col.title())
    plt.tight_layout()
    plt.show()

plot_sales_trend(df)
```

**Error Handling**:
```python
try:
    df = pd.read_csv('data.csv')
except FileNotFoundError:
    print('File missing; using sample data.')
    df = pd.DataFrame(np.random.randn(100, 3), columns=['A', 'B', 'C'])
assert df.shape[0] > 0, 'Empty dataset!'

Comments

More Rules

View all
AI/ML

GLM-4.7 Optimized Config & System Prompt Designer

Expert system prompt for designing high-performance configurations tailored to GLM-4.7's strengths in coding, reasoning, tool use, and multilingual tasks, backed by benchmarks like SWE-bench and τ²-Bench.

C
Community
AI/ML

GLM-4.7 Open-Source Coding Expert: Optimized System Prompt

Leverage GLM-4.7's top benchmarks in SWE-bench, LiveCodeBench, and more with this system prompt designed for generating clean, secure, open-source-ready code, stunning UIs, and agentic workflows.

C
Community
AI/ML

GLM-4.7 Optimized Coding Agent

This system prompt transforms an AI into GLM-4.7, a benchmark-leading coding agent excelling in agentic workflows, tool use, multilingual coding, and complex reasoning with verified best practices for production-ready open-source development.

C
Community
DevOps

Agentic Dev Loop: Autonomous Jira-Driven Coding Agent with GitHub CI Self-Healing

Ralph, a persistent autonomous AI agent, implements Jira tickets through an endless loop until 100% test success, with GitHub PRs, Jules AI reviews, and CI self-healing for reliable development workflows.

C
Claude Directory
AI/ML

Türk Hukuku Uzmanı AI Agent: Güvenilir Yasal Danışman System Prompt

Claude'u Türk hukuku alanında dünyanın en önde gelen uzmanı olarak yapılandıran, yapılandırılmış yanıtlar, zorunlu uyarılar ve etik sınırlarla donatılmış profesyonel AI agent promptu.

C
Community
Database

PostgreSQL Best Practices: Expert Subagent Guide

Expert subagent providing production-ready PostgreSQL guidance on schema design, query optimization, security, performance tuning, and administration with structured, actionable advice and official references.

C
Claude Directory