Рассмотрим фрейм данных pyspark, состоящий из нулевых и числовых элементов. Как правило, числовые элементы имеют разные значения. Как можно заменить все числовые значения кадра данных постоянным числовым значением (например, значением 1)? Заранее спасибо!
Пример для фрейма данных pyspark:
Результат должен быть:
python
apache-spark
только мы
источник
источник
Ответы:
Использование
lit
будет преобразовывать все значения столбца в заданное значение.Чтобы сделать это только для ненулевых значений dataframe, вам нужно будет отфильтровать ненулевые значения каждого столбца и заменить свое значение.
when
может помочь вам достичь этого.Это приведет к:
Также, если вы хотите заменить эти нулевые значения другими значениями, вы можете использовать их
otherwise
вместе сwhen
. Допустим, вы хотите вменять0
там:Это приведет к:
источник
В соответствии с вашей проблемой, я думаю , что может быть проще использовать освещено . Попробуй это-
Надеюсь, поможет!
источник
Это было бы проще, если у вас есть несколько столбцов:
источник