Проверьте, содержит ли логический столбец только истинные значения.Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Проверьте, содержит ли логический столбец только истинные значения.

Сообщение Anonymous »

Работая в Databricks, я получил фрейм данных, который выглядит следующим образом:

Код: Выделить всё

columns = ["a", "b", "c"]
data = [(True, True, True), (True, True, True), (True, False, True)]
df = spark.createDataFrame(data).toDF(*columns)
df.display()
Изображение

Я хотел бы выбрать только те столбцы кадра данных, в которых не все значения являются истинными.

В pandas я бы использовал df['a'].all() для проверьте, верны ли все значения столбца «а». К сожалению, я не нашел эквивалента в PySpark.
Я нашел решение проблемы, но оно кажется слишком сложным:

Код: Выделить всё

df.select(*[column for column in df.columns
if df.select(column).distinct().collect() !=
spark.createDataFrame([True], 'boolean').toDF(column).collect()])
Решение возвращает то, что я хочу:
[img]https://i.sstatic. net/QRlPN.png[/img]

Есть ли более простой способ сделать это в PySpark?

Подробнее здесь: https://stackoverflow.com/questions/758 ... rue-values
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»