Как применить функции udf в столбце, который содержит только нулевое и истинное значение

У меня есть фрейм данных с именами столбцов "x" и "Y", столбец y содержит только нулевые и истинные значения,

x       y
br     null
br     null
bm     null
bm     null
br     true
bm     true

Мне нужно создать udf, который создает другой столбец "z" и помечает null как 1 и true как 0.

x       y         z
br     null       1
br     null       1
bm     null       1
bm     null       1
br     true       0
bm     true       0

person Mukesh Jha    schedule 21.11.2016    source источник


Ответы (1)


На самом деле вам не нужен UDF для этого. Это довольно просто использовать предложения when и otherwise:

from pyspark.sql.functions import when, col

df.withColumn("z", when(col("y").isNull(), 1).otherwise(0))
person eliasah    schedule 21.11.2016