Pyspark 改变值

Pyspark to change values

我有一个带有列标签的 pyspark 数据框:

label
  0
  1
  2
  3
  0

我想创建一个新列 new_label,将所有非 3 的值更改为 0。 只有 2 类:03

我是 pyspark 的新手。我该怎么做?

假设 df 是您的数据框:

from pyspark.sql import functions as F

df = df.withColumn("new_label", F.when(F.col("label") == 3, 3).otherwise(0))