#python #apache-spark #pyspark #outliers
#python #apache-spark #pyspark #выбросы
Вопрос:
Мне нужно заменить мои выбросы на нули в pyspark
df = df.withColumn("rpm", when(df["rpm"] >= 750, None).otherwise(df["rpm"]))
Однако я получаю эту ошибку:
TypeError: condition should be a Column
Комментарии:
1. похоже, вы закрываете
withColumn
перед вызовомotherwise
:df = df.withColumn("rpm", when(df["rpm"] >= 750, None).otherwise(df["rpm"]))
?2. @anky, закрытие
withColumn
после вызоваotherwise
не изменило результат — оно вернуло ту же ошибку. Спасибо3. Хорошо, работает для меня, может быть версия spark, если я чего-то не упустил: попробуйте :
df.withColumn("rpm", when(col("rpm") >= 750, None).otherwise(col("rpm")))
, импортируйтеcol
, если вы еще этого не сделали
Ответ №1:
Комментарий Анки выше работает. Спасибо.
df.withColumn("rpm", when(col("rpm") >= 750, None).otherwise(col("rpm")))