MCPInstall

senior-data-scientist

Use when the user needs ML pipelines, statistical analysis, data preprocessing, feature engineering, model selection, experiment tracking, or data visualization. Triggers: dataset exploration, model training, feature engineering, hyperparameter tuning, experiment tracking setup, statistical hypothesis testing, visualization creation.

Installs
81
Last 24h
—
Trending rank
—
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/pixel-process-ug/superkit-agents --skill senior-data-scientist
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads senior-data-scientist automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

Senior Data Scientist

Overview

Build end-to-end data science workflows from data exploration through model deployment. This skill covers data preprocessing, feature engineering, model selection, hyperparameter tuning, cross-validation, experiment tracking with MLflow/W&B, statistical testing, visualization with matplotlib/seaborn/plotly, and Jupyter notebook best practices.

Announce at start: "I'm using the senior-data-scientist skill for data science workflow."


Phase 1: Data Understanding

Goal: Profile the dataset and establish a baseline before any modeling.

Actions

  1. Load and profile the dataset (shape, types, distributions)
  2. Identify missing values, outliers, and data quality issues
  3. Perform exploratory data analysis (EDA)
  4. Define the target variable and success metrics
  5. Establish baseline performance

Baseline Models (Always Start Here)

TaskBaseline ModelWhy
ClassificationMajority class classifierLower bound for accuracy
ClassificationLogistic regressionSimple, interpretable
RegressionMean predictorLower bound for RMSE
RegressionLinear regressionSimple, interpretable
Time seriesNaive forecast (previous value)Lower bound for MAE
Time seriesSeasonal naiveCaptures basic seasonality

STOP — Do NOT proceed to Phase 2 until:

  • Dataset is profiled (shape, types, distributions)
  • Missing values and outliers are documented
  • Target variable is defined
  • Success metrics are chosen
  • Baseline performance is established

Phase 2: Feature Engineering

Goal: Transform raw data into features that improve model performance.

Actions

  1. Handle missing values (imputation strategy)
  2. Encode categorical variables
  3. Scale/normalize numerical features
  4. Create derived features
  5. Feature selection (remove redundant/irrelevant)

Missing Value Strategy Decision Table

StrategyWhen to UseImplementation
Drop rows< 5% missing, MCARdf.dropna()
Mean/MedianNumerical, no outliersSimpleImputer(strategy='median')
ModeCategoricalSimpleImputer(strategy='most_frequent')
KNN ImputerStructured missing patternsKNNImputer(n_neighbors=5)
IterativeComplex relationshipsIterativeImputer()
Flag + ImputeMissingness is informativeAdd is_missing column + impute

Categorical Encoding Decision Table

MethodWhenCardinality
One-HotNominal, low cardinality< 10 categories
Label/OrdinalOrdinal featuresAny
Target EncodingHigh cardinality nominal> 10 categories
Frequency EncodingWhen frequency mattersAny
Binary EncodingVery high cardinality> 50 categories

Scaling Decision Table

ScalerWhenRobust to Outliers?
StandardScalerDefault choice (mean=0, std=1)No
RobustScalerOutliers present (median/IQR)Yes
MinMaxScalerNeural networks, distance-based [0,1]No

Feature Types and Engineering

Feature TypeTechniques
NumericalLog transform, polynomial, binning, interactions (A*B, A/B)
TemporalHour, day-of-week, is_weekend, time_since_event, cyclical (sin/cos), lags
TextTF-IDF, word count, sentiment scores, named entities, embeddings
CategoricalEncoding (above), interaction with numerical features

Feature Selection Decision Table

MethodTypeUse When
Correlation matrixFilterInitial exploration
Mutual informationFilterNon-linear relationships
Recursive Feature EliminationWrapperModel-specific selection
L1 RegularizationEmbeddedLinear models
Feature importanceEmbeddedTree-based models
Permutation importanceModel-agnosticFinal validation

STOP — Do NOT proceed to Phase 3 until:

  • Missing values are handled with justified strategy
  • Categorical variables are encoded appropriately
  • Numerical features are scaled
  • Feature engineering is done BEFORE train/test split on training data only
  • Feature selection has reduced dimensionality if needed

Phase 3: Modeling

Goal: Select, train, and evaluate candidate models.

Actions

  1. Select candidate algorithms
  2. Set up cross-validation strategy
  3. Train and evaluate candidates
  4. Hyperparameter tuning
  5. Final model selection and evaluation

Algorithm Decision Table

Data CharacteristicsTry FirstAlso Consider
Tabular, < 10K rowsRandom Forest, XGBoostLogistic/Linear Regression
Tabular, > 10K rowsXGBoost, LightGBMCatBoost, Neural Network
High dimensionalityLasso/Ridge, SVMRandom Forest with selection
Time seriesProphet, ARIMALSTM, XGBoost with lag features
Text classificationFine-tuned transformerTF-IDF + Logistic Regression
Image classificationPre-trained CNN (ResNet, EfficientNet)Vision Transformer
RegressionXGBoost, Random ForestLinear Regression, Neural Network
Anomaly detectionIsolation ForestLOF, Autoencoder

Cross-Validation Strategy Decision Table

StrategyWhenCode
K-Fold (k=5)Default, balanced dataKFold(n_splits=5)
Stratified K-FoldClassification, imbalancedStratifiedKFold(n_splits=5)
Time Series SplitTemporal dataTimeSeriesSplit(n_splits=5)
Group K-FoldGrouped observationsGroupKFold(n_splits=5)
Leave-One-OutVery small datasetsLeaveOneOut()

Evaluation Metrics Decision Table

TaskPrimary MetricSecondary Metrics
Binary ClassificationAUC-ROCF1, Precision, Recall, AP
MulticlassMacro F1Accuracy, Confusion Matrix
RegressionRMSEMAE, R-squared, MAPE
RankingNDCGMAP, MRR
Anomaly DetectionF1, APPrecision@K, Recall@K

Hyperparameter Tuning Decision Table

MethodCompute BudgetSearch SpaceImplementation
Grid SearchLow (< 100 combos)Small, known rangesGridSearchCV
Random SearchMediumLarge, uncertainRandomizedSearchCV
Bayesian (Optuna)AnyLarge, expensiveoptuna.create_study()
Successive HalvingLargeMany candidatesHalvingRandomSearchCV

Common Hyperparameters (XGBoost/LightGBM)

param_space = {
    'n_estimators': [100, 300, 500, 1000],
    'max_depth': [3, 5, 7, 9],
    'learning_rate': [0.01, 0.05, 0.1],
    'subsample': [0.7, 0.8, 0.9],
    'colsample_bytree': [0.7, 0.8, 0.9],
    'min_child_weight': [1, 3, 5],
}

STOP — Do NOT proceed to Phase 4 until:

  • At least 2 candidate models are evaluated
  • Cross-validation is used (not just train/test split)
  • Results beat the baseline from Phase 1
  • Best model is selected with justification
  • Overfitting is checked (train vs validation gap)

Phase 4: Deployment

Goal: Serialize, serve, and monitor the model in production.

Actions

  1. Serialize model and preprocessing pipeline
  2. Create prediction API or batch pipeline
  3. Set up monitoring for data drift and model degradation
  4. Document model card (inputs, outputs, limitations, biases)

STOP — Deployment complete when:

  • Model is serialized with preprocessing pipeline
  • Prediction API or batch pipeline works end-to-end
  • Monitoring is configured for data drift
  • Model card is documented

Experiment Tracking

MLflow Pattern

import mlflow

mlflow.set_experiment("customer-churn-prediction")

with mlflow.start_run(run_name="xgboost-v2"):
    mlflow.log_params(params)
    mlflow.log_metrics({"auc": auc_score, "f1": f1_score})
    mlflow.log_artifact("confusion_matrix.png")
    mlflow.sklearn.log_model(pipeline, "model")
    mlflow.set_tag("version", "2.1")

What to Track

CategoryItems
ParametersAll hyperparameters, random seed
MetricsTrain and validation metrics
DataData version/hash, feature list
ArtifactsPlots, reports, model files
MetadataTraining duration, model size

Statistical Tests Decision Table

QuestionTestAssumption
Two group means different?t-test (independent)Normal distribution
Two groups (non-normal)?Mann-Whitney UNone
Paired measurements?Paired t-testNormal differences
3+ group means?ANOVANormal, equal variance
Categorical association?Chi-squaredExpected freq > 5
Distribution normal?Shapiro-Wilkn < 5000
Two distributions different?Kolmogorov-SmirnovContinuous data

P-Value Guidelines

  • p < 0.05: statistically significant (conventional)
  • Always report effect size alongside p-value
  • Adjust for multiple comparisons (Bonferroni, FDR)
  • Statistical significance is not practical significance

Visualization Decision Table

Data TypePlotLibrary
DistributionHistogram, KDE, Box plotseaborn
ComparisonBar chart, Grouped barmatplotlib
CorrelationScatter, Heatmapseaborn
TrendLine chartmatplotlib/plotly
CompositionStacked bar, Pie (max 5 slices)matplotlib
InteractiveScatter, Line, Dashboardplotly

Visualization Rules

  • Title every plot descriptively
  • Label axes with units
  • Use colorblind-safe palettes (seaborn: colorblind)
  • Start y-axis at 0 for bar charts
  • Annotate key findings directly on plots

Jupyter Notebook Structure

1. ## Setup (imports, configuration)
2. ## Data Loading
3. ## Exploratory Data Analysis
4. ## Data Preprocessing
5. ## Feature Engineering
6. ## Modeling
7. ## Evaluation
8. ## Conclusions

Notebook Best Practices

  • Restart and run all before sharing
  • Keep cells focused and sequential
  • Use markdown cells for explanations
  • Extract reusable code to .py modules
  • Version control with nbstripout
  • Pin all dependency versions

Anti-Patterns / Common Mistakes

Anti-PatternWhy It Is WrongCorrect Approach
Training on test dataData leakage, inflated metricsStrict train/test separation
Feature engineering before splitLeaks test information into featuresEngineer on training data only
Reporting training metricsNot generalizableReport validation/test metrics
Accuracy on imbalanced dataMisleading (majority class wins)Use F1, AUC-ROC, or AP
Tuning on test setOverfitting to test dataUse validation set for tuning
No baseline comparisonCannot measure improvementAlways establish baseline first
Cherry-picking evaluation examplesSelection biasReport on full evaluation set
Deploying without drift monitoringSilent model degradationMonitor input distributions

Integration Points

SkillRelationship
senior-prompt-engineerPrompt evaluation uses statistical testing methods
testing-strategyML testing follows the evaluation methodology
performance-optimizationModel inference optimization follows measurement cycle
acceptance-testingModel performance thresholds become acceptance criteria
llm-as-judgeSubjective output evaluation uses LLM-as-judge
code-reviewNotebook and pipeline code reviewed for quality

Skill Type

FLEXIBLE — Adapt preprocessing, modeling, and evaluation approaches to the specific data characteristics, business requirements, and compute constraints. The four-phase process and experiment tracking are strongly recommended. Always establish a baseline before modeling.

FAQ

What does the senior-data-scientist skill do?

Use when the user needs ML pipelines, statistical analysis, data preprocessing, feature engineering, model selection, experiment tracking, or data visualization. Triggers: dataset exploration, model training, feature engineering, hyperparameter tuning, experiment tracking setup, statistical hypothesis testing, visualization creation.

How do I install senior-data-scientist?

Run npx skills add https://github.com/pixel-process-ug/superkit-agents --skill senior-data-scientist in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/senior-data-scientist/ (personal) or .claude/skills/senior-data-scientist/ (project).

Which AI agents can use senior-data-scientist?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is senior-data-scientist safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains senior-data-scientist?

It is published by pixel-process-ug in pixel-process-ug/superkit-agents. It has 81 recorded installs.

More from pixel-process-ug/superkit-agents

View all →

ui-ux-pro-max

pixel-process-ug/superkit-agents

Use when the user needs full UI/UX design intelligence — styles, palettes, fonts, UX guidelines, chart selection, and accessible, performant implementation across any supported stack. Triggers: user says "design", "UI", "UX", "color palette", "typography", "accessibility", "responsive design", "chart type", "style guide", building any user-facing interface.

Frontend & Design1.2K installs

frontend-ui-design

pixel-process-ug/superkit-agents

Open the skill to read its SKILL.md instructions.

Frontend & Design117 installs

reverse-engineering-specs

pixel-process-ug/superkit-agents

Open the skill to read its SKILL.md instructions.

107 installs

canvas-design

pixel-process-ug/superkit-agents

Open the skill to read its SKILL.md instructions.

90 installs

autonomous-loop

pixel-process-ug/superkit-agents

Open the skill to read its SKILL.md instructions.

88 installs

mobile-design

pixel-process-ug/superkit-agents

Open the skill to read its SKILL.md instructions.

Mobile87 installs

Popular data & databases skills

View category →

Postgres best practices maintained by Supabase, for Postgres running anywhere. Load this skill BEFORE writing or changing anything that lives in a Postgres database: creating or altering tables and columns (including choosing column types), schema design, migrations and declarative schema files, RLS policies and the tests that verify them, indexes, triggers, database functions, queues and scheduled jobs (pgcron, pgmq), vector/semantic search (pgvector), and restoring dumps (pgrestore) or importing data. Also load it when diagnosing slow queries, high CPU, timeouts, EXPLAIN plans, connection exhaustion, locking, bloat, or rows visible to the wrong user or tenant. This is not just a performance guide — schema, migration, security, and SQL authoring tasks need these rules too, even for a one-column change or a single query.

OfficialData & Databases462.2K installs

prisma-client-api

prisma/skills

Prisma Client API reference covering model queries, filters, operators, and client methods. Use when writing database queries, using CRUD operations, filtering data, or configuring Prisma Client. Triggers on "prisma query", "findMany", "create", "update", "delete", "$transaction".

OfficialData & Databases393.5K installs

Deprecated compatibility name for prisma-orm-setup. Use only when a user or existing integration explicitly invokes prisma-database-setup; otherwise select prisma-orm-setup.

OfficialData & Databases392.3K installs

prisma-cli

prisma/skills

Prisma ORM 7 CLI reference for existing Prisma 7 applications or explicitly selected Prisma 7 workflows. Covers prisma init, generate, migrate, db, dev, studio, and mcp. For setup, connection repair, or Prisma 8, use prisma-orm-setup; not the Prisma Platform CLI.

OfficialData & Databases390.8K installs

prisma-postgres

prisma/skills

Deprecated compatibility name for prisma-postgres-setup. Use only when a user or existing integration explicitly invokes prisma-postgres; otherwise select prisma-postgres-setup.

OfficialData & Databases384.4K installs

Required reference for Prisma ORM 7 SQL driver adapter work. Use when implementing or modifying adapters, adding database drivers, or touching SqlDriverAdapter, Transaction, savepoint, result mapping, or DriverAdapterError behavior. Covers current transaction lifecycle, optional savepoint hooks, original database-error preservation, and verification.

OfficialData & Databases378.9K installs