Feature Engineering Cheat Sheet
Practical techniques for transforming raw data into model-ready features, including encoding, scaling, binning, and interaction terms with pandas and scikit-learn.
2 PagesIntermediateFeb 25, 2026
Encoding & Scaling
Convert categories and numeric ranges for modeling.
python
import pandas as pdfrom sklearn.preprocessing import OneHotEncoder, LabelEncoder, StandardScaler, MinMaxScaler# One-hot encoding (for nominal categories)df_encoded = pd.get_dummies(df, columns=["city"], drop_first=True)# Ordinal / label encoding (for ordered categories)le = LabelEncoder()df["size_encoded"] = le.fit_transform(df["size"]) # e.g. S, M, L -> 0, 1, 2# Target/mean encoding (compute within CV folds to avoid leakage!)means = df.groupby("category")["target"].mean()df["category_encoded"] = df["category"].map(means)# Scalingscaler = StandardScaler() # mean=0, std=1df[["age_scaled"]] = scaler.fit_transform(df[["age"]])minmax = MinMaxScaler() # scales to [0, 1]df[["income_scaled"]] = minmax.fit_transform(df[["income"]])
Creating New Features
Date parts, bins, and interaction terms.
python
import pandas as pdimport numpy as np# Date/time featuresdf["date"] = pd.to_datetime(df["date"])df["day_of_week"] = df["date"].dt.dayofweekdf["month"] = df["date"].dt.monthdf["is_weekend"] = df["day_of_week"].isin([5, 6]).astype(int)# Binning a continuous variabledf["age_bucket"] = pd.cut(df["age"], bins=[0, 18, 35, 60, 100], labels=["teen", "young_adult", "adult", "senior"])# Interaction featuresdf["price_per_sqft"] = df["price"] / df["sqft"]df["income_x_education"] = df["income"] * df["education_years"]# Log transform for right-skewed datadf["log_income"] = np.log1p(df["income"]) # log1p handles zeros safely
Encoding Techniques
Ways to turn categorical variables into numbers.
- One-hot encoding- creates a binary column per category; best for low-cardinality nominal features
- Label/ordinal encoding- maps categories to integers; only valid when order is meaningful
- Target encoding- replaces category with mean of target; must be computed within CV folds to avoid leakage
- Frequency encoding- replaces category with its occurrence count/frequency
- Hashing trick- hashes high-cardinality categories into a fixed number of buckets
- Embeddings- learned dense vectors for categories, common in deep learning pipelines
Scaling Methods
How to rescale numeric features.
- StandardScaler- centers to mean 0, std 1; assumes roughly Gaussian data, sensitive to outliers
- MinMaxScaler- rescales to a fixed range (e.g. [0,1]); preserves shape but sensitive to outliers
- RobustScaler- uses median and IQR; robust to outliers
- Normalizer- scales each sample (row) to unit norm, not each feature
- Log/Box-Cox transform- reduces right-skew and stabilizes variance
- PolynomialFeatures- generates interaction and power terms from existing features
Pro Tip
Fit scalers and encoders only on the training fold, then transform validation/test data with those fitted parameters — fitting on the full dataset before splitting silently leaks information and inflates your validation score.
Was this cheat sheet helpful?
Explore Topics
#FeatureEngineering#FeatureEngineeringCheatSheet#DataScience#Intermediate#EncodingScaling#CreatingNewFeatures#EncodingTechniques#ScalingMethods#MachineLearning#CheatSheet#SkillVeris
Advertisement
Sri Hayavadhana Info-Tech
Professional Web Designing Services
- Responsive Websites
- E-commerce Solutions
- SEO Friendly Design
- Fast & Secure
- Support & Maintenance