How can we implement complex multi-tier business categorization rules across numerical and string dimensions simultaneously?
Chained when() conditions evaluate boolean expressions sequentially in Catalyst, assigning categorical tiers with a safe fallback otherwise().
Segmenting customer risk levels, dynamic pricing tiers, or priority routing in data pipelines.
df_tiered = df.withColumn("tier", when((col("credit_score") > 750) & (col("income") > 100000), "PREMIUM").when((col("credit_score") > 650) & (col("income") > 50000), "STANDARD").otherwise("BASIC"))Practice typing production-grade PySpark code for Complex Multi-Tier when/otherwise Logic.