R
Rishtaara
Machine Learning Fundamentals
Lesson 2 of 8Article19 minFREE

Data Preprocessing and Feature Engineering

Data Preprocessing and Feature Engineering

Data preparation essentials

  • Handle missing values with drop/impute strategy.
  • Encode categorical variables.
  • Scale numeric features for distance-based models.
  • Split train/validation/test before peeking at outcomes.

Pipeline example

Scikit-learn preprocessing pipeline
from sklearn.compose import ColumnTransformer
from sklearn.pipeline import Pipeline
from sklearn.preprocessing import OneHotEncoder, StandardScaler
from sklearn.impute import SimpleImputer

numeric_features = ["age", "salary"]
categorical_features = ["city", "education"]

preprocess = ColumnTransformer([
    ("num", Pipeline([
        ("imputer", SimpleImputer(strategy="median")),
        ("scaler", StandardScaler())
    ]), numeric_features),
    ("cat", Pipeline([
        ("imputer", SimpleImputer(strategy="most_frequent")),
        ("onehot", OneHotEncoder(handle_unknown="ignore"))
    ]), categorical_features),
])