Skip to main content
PYSPARK • LESSON 201

Complex Multi-Tier when/otherwise Logic

How can we implement complex multi-tier business categorization rules across numerical and string dimensions simultaneously?

Advanced3 Minutes800 XP
🤔 THE QUESTION

How can we implement complex multi-tier business categorization rules across numerical and string dimensions simultaneously?

💡 WHAT IS IT?

Chained when() conditions evaluate boolean expressions sequentially in Catalyst, assigning categorical tiers with a safe fallback otherwise().

🎯 WHAT IS IT USED FOR?

Segmenting customer risk levels, dynamic pricing tiers, or priority routing in data pipelines.

💻 EXAMPLE
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"))

🎯 Mission Objectives

Practice typing production-grade PySpark code for Complex Multi-Tier when/otherwise Logic.

  • Chained when() conditions
  • Multi-column predicates
  • Default fallback categorization