Ach czekaj - chyba to mam. Jeśli zrobię coś takiego, wydaje się, że działa:
null = u'\u0000'
new_df = df.withColumn('e', regexp_replace(df['e'], null, ''))
A następnie mapowanie na wszystkie kolumny ciągów:
string_columns = ['d','e']
new_df = df.select(
*(regexp_replace(col(c), null, '').alias(c) if c in string_columns else c for
c in df.columns)
)