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?

Advancedโฑ 3 Minutesโญ 800 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