🐼 PandaScrub: Interactive Data Studio & Python Visualizer
The reactive 2-way visual studio for Pandas, DataFrames & Python in Visual Studio Code.
Code in standard Python, press Ctrl + S, and watch your DataFrames, Charts, and Pivot Tables update live beside your code.
⚡ 30-Second Quick Start
Get up and running in 3 simple steps:
Step 1: Open Your Dataset in PandaScrub
- In VS Code's file explorer, right-click any
.csv, .tsv, .xlsx, or .parquet file.
- Select "Open with PandaScrub Data Studio".
(Or right-click $\to$ Open With... $\to$ PandaScrub Data Studio).
Step 2: Open Your Python File Side-by-Side
Step 3: Hit Ctrl + S & Watch the Magic!
- The moment you save
analysis.py with Ctrl + S, PandaScrub instantly extracts your DataFrame and renders it live on screen with full sorting, filtering, and column profiling!
🚀 The 4 Core Superpowers
1. 📊 Interactive Data Table & Multi-Variable Switcher
- Any Variable Name: PandaScrub detects DataFrames with any name (
df, customers, sales, titanic, x, pivot_df).
- Variable Switcher Dropdown: Have multiple DataFrames or
pd.Series in your script? PandaScrub lists all of them in the top-left dropdown (Var: df (891×12)) so you can switch and inspect them with 1 click.
- Instant Column Profiler: View data types (
int, float, string, date), unique counts, null percentages, and data quality scores at a glance.
- 60 FPS Virtual Grid: Silky-smooth scrolling through 100,000+ rows with zero lag.
2. 🧹 1-Click Visual Data Cleaning (Recipe Engine)
3. 🔄 Visual Pivot Table & GroupBy Studio
- Cross-Tabulations in Seconds: Drag and select your Rows (Index), Columns (Pivot), and Value columns with aggregations (
sum, mean, count, median, min, max, std).
- Heatmap Gradient Shading: Visually spot outliers and high-value clusters with automatic cell coloring.
- Flat GroupBy Support: Automatically collapses into standard 1D
df.groupby() when no column dimension is selected.
- ⚡ Insert into Python Script: Click the green
Insert into Python Script button to generate production pd.pivot_table(df, ...) code directly into your script!
4. 📈 Matplotlib & Seaborn Chart Playground
- Live Side-by-Side Plotting: Write free-hand Matplotlib / Seaborn code and preview publication-grade charts immediately.
- Instant Presets: 1-click starter templates for Bar Charts, Line Trends, Scatter Plots, Box Plots, KDE Density Curves, and Correlation Heatmaps.
- Flexible Layouts: Switch between side-by-side columns, stacked rows, code-focus, or canvas-focus modes.
- 1-Click Export: Download high-res PNGs or click
Insert into Script to inject your plotting code into your project.
💡 Practical Python Examples to Try
Example A: Inspect Trailing Expressions
PandaScrub automatically handles trailing .describe(), .info(), and .head():
import pandas as pd
df = pd.read_csv('titanic.csv')
# Instantly displays an 8-row statistical summary table in the GUI:
df.describe()
Example B: Series Value Counts
import pandas as pd
df = pd.read_csv('titanic.csv')
# Visualized as a clean 2-column table with category and frequency counts:
df['Embarked'].value_counts()
Example C: Cross-Tabulation Pivot
import pandas as pd
df = pd.read_csv('titanic.csv')
# Generates a summarized matrix of average fare by Class and Gender:
pivot_df = pd.pivot_table(
df,
index='Pclass',
columns='Sex',
values='Fare',
aggfunc='mean'
).round(2)
❓ Frequently Asked Questions (FAQ)
Q: Do I have to name my DataFrame df?
A: No! You can name it whatever you like: customers, raw_data, sales_2026, x, etc. PandaScrub inspects Python's AST and finds your DataFrames automatically.
Q: Which Python file does PandaScrub connect to?
A: PandaScrub connects to whichever .py file you have open beside it or whichever file you just saved (Ctrl + S). If no Python file is open, it will offer to create analysis.py for you.
Q: Will PandaScrub modify my Python code without my permission?
A: Never. Code is only written into your script when you explicitly click an ⚡ Insert button. All injected code is safely contained inside clearly marked # >>> PANDASCRUB MANAGED PIPELINE >>> boundaries.
Q: How heavy is this extension?
A: PandaScrub is ultra-lightweight at under 400 KB (380 KB). It has zero heavy binary dependencies and delegates execution directly to your local Python interpreter.
🛡️ License
MIT License • Built with ❤️ for Data Analysts, Scientists, and Python Engineers.
| |