rasgointelligence
feature-engineering-tutorials
Jupyter Notebook

Data Science Feature Engineering and Selection Tutorials

Last updated May 14, 2026
291
Stars
100
Forks
38
Issues
0
Stars/day
Attention Score
86
Language breakdown
Jupyter Notebook 100.0%
Files click to expand
README

Tutorials: Feature Engineering in Python

Binder Chat on Discourse Chat on Slack

Andrew Ng stated, “applied ML is basically just feature engineering.” In data science and ML, the most important, but oftentimes most overlooked, piece of the puzzle is feature engineering.

At Rasgo, we are data scientists on the mission to enable the global data science community to generate valuable and trusted insights from data in under 5 minutes. As we have marched forward on this mission, we’ve grown incredibly frustrated in the lack of helpful content and python functions that target feature engineering. We wrestle with these problems everyday and we wanted to provide a repository of recipes that showcase how to use the best tools available in this space. Additionally, we’ve built our own SDK (PyRasgo) for feature engineering that enables users to automatically track, visualize, and evaluate their feature engineering experiments to make more accurate and explainable feature engineering decisions.

In that vein, this repository contains tutorials and code to enable data scientists to easily create new ML features and evaluate their importance for supervised machine learning. We sincerely hope this is helpful and please leave comments with any questions on what we can do to improve!

Please join us on the

Table of Contents

  • Feature Profiling
* pandas-profiling: Open In Colab Render in nbviewer Binder * SweetViz: Open In Colab Render in nbviewer Binder
  • Data Cleaning
* Missing Data * pandas: Open In Colab Render in nbviewer Binder * Duplicate Data * pandas: Open In Colab Render in nbviewer Binder * Data Type Mismatch * pandas: Open In Colab Render in nbviewer Binder * Date Gaps in Time Series * pandas: Open In Colab Render in nbviewer Binder
  • Feature Transformation
* Time-series * Lag: Open In Colab Render in nbviewer Binder * Moving Average: Open In Colab Render in nbviewer Binder * Weekly Resampled Aggregation: Open In Colab Render in nbviewer Binder * Weekly Rolling Aggregation: Open In Colab Render in nbviewer Binder * Velocity and Acceleration: Open In Colab Render in nbviewer Binder * Energy: Open In Colab Render in nbviewer Binder * Mean Difference: Open In Colab Render in nbviewer Binder * Mean Absolute Difference: Open In Colab Render in nbviewer Binder * tsfresh: Open In Colab Render in nbviewer Binder * Categorical * One-hot encoding: Open In Colab Render in nbviewer Binder * Target encoding: Open In Colab Render in nbviewer Binder * Leave One Out encoding: Open In Colab Render in nbviewer Binder * Numerical * Standard scaler: Open In Colab Render in nbviewer Binder * Min-Max scaler: Open In Colab Render in nbviewer Binder * Robust scaler: Open In Colab Render in nbviewer Binder
  • Model Selection
* Train-Test Split * Time Series Split * Scikit-learn: Open In Colab Render in nbviewer Binder * Train-Test Split: Open In Colab Render in nbviewer Binder * K-Fold or Cross-Validation * Random: Open In Colab Render in nbviewer Binder * Stratified: Open In Colab Render in nbviewer Binder * Group: Open In Colab Render in nbviewer Binder * Model Comparison * PyCaret: Open In Colab Render in nbviewer Binder * Model Training * Catboost * Classification: Open In Colab Render in nbviewer Binder * Regression: Open In Colab Render in nbviewer Binder * Model Metrics * Binary Classification * AUC: Open In Colab Render in nbviewer Binder * Log Loss: Open In Colab Render in nbviewer Binder * Regression * MAE: Open In Colab Render in nbviewer Binder * MAPE: Open In Colab Render in nbviewer Binder * RMSE: Open In Colab Render in nbviewer Binder * R^2: Open In Colab Render in nbviewer Binder
  • Feature Importance
* Scikit-learn: Open In Colab Render in nbviewer Binder * XGBoost: Open In Colab Render in nbviewer Binder * catboost: Open In Colab Render in nbviewer Binder
  • Feature Selection
* Model Agnostic * Low Variance: Open In Colab Render in nbviewer Binder * Univariate Feature Selection * F-test: Open In Colab Render in nbviewer Binder * Mutual Information: Open In Colab Render in nbviewer Binder * Model Based * Lasso-based Selection (Coming soon) * Feature Importance * Scikit-learn Tree-based: Open In Colab Render in nbviewer Binder * Permutation Importance: Open In Colab Render in nbviewer Binder * SHAP Values: Open In Colab Render in nbviewer Binder * Sequential Feature Selection * Forward Stepwise Selection (Coming soon) * Backwards Stepwise Selection * Scikit-learn Tree-based: Open In Colab Render in nbviewer Binder * catboost: Open In Colab Render in nbviewer Binder

🔗 More in this category

© 2026 GitRepoTrend · rasgointelligence/feature-engineering-tutorials · Updated daily from GitHub