pythonintermediate
Pandas Cartesian Feature Interaction
Generate pairwise feature interactions for ML by creating cross-product columns.
pythonPress ⌘/Ctrl + Shift + C to copy
import pandas as pd
from itertools import combinations
df = pd.DataFrame({'A':[1,2,3],'B':[4,5,6],'C':[7,8,9]})
numeric_cols = ['A','B','C']
for c1, c2 in combinations(numeric_cols, 2):
df[f'{c1}_{c2}_product'] = df[c1] * df[c2]
df[f'{c1}_{c2}_ratio'] = df[c1] / df[c2].replace(0, float('nan'))
print(df)Use Cases
- ML feature engineering
- polynomial features
- interaction terms
Tags
Related Snippets
Similar patterns you can reuse in the same workflow.
pythonbeginner
Pandas Categorical Encoding for ML
One-hot encode, label encode, and ordinal encode categorical columns using pandas and scikit-learn.
Best for: ML preprocessing
#pandas#encoding
pythonintermediate
Pandas IntervalIndex for Binning
Use IntervalIndex and pd.cut to bin continuous variables into labelled categories.
Best for: grading systems
#pandas#binning
pythonintermediate
Stratified Sampling with pandas
Draw a stratified random sample from a DataFrame, preserving class proportions for ML splits.
Best for: ML dataset splitting
#pandas#sampling
pythonintermediate
Pandas GroupBy Transform Patterns
Use groupby().transform() to compute group-level statistics and broadcast them back to row level.
Best for: feature engineering
#pandas#groupby