группировка столбцов для отображения с помощью предложения select в pyspark - PullRequest
0 голосов
/ 12 февраля 2020

Я пытаюсь отобразить фрейм данных pyspark, где некоторые интересующие столбцы (coi) являются описательными, а другие (другие протоколы) имеют номера c, для которых я пытаюсь установить уровень точности.

coi=['col1','col2']
othercols=['col3','col4']

Я использую круглое предложение, измененное из показанного сообщения здесь

df.select(coi,[round(c,3).alias(c) for c in df.columns if c in othercols]).show()

Но это выдает мне ошибку.

Недопустимый аргумент, не строка или столбец: ['col1', 'col2] типа. Для литералов столбцов используйте функцию 'lit', 'array', 'struct' или 'create_map'.

На самом деле, когда я просто пытаюсь df.select(coi,othercols).show(), это выдает мне ошибку. Однако, если я попробую его отдельно, например df.select(coi).show()

или df.select([round(c,3).alias(c) for c in df.columns if c in othercols]).show(), он будет работать нормально.

Есть ли способ сгруппировать предопределенные столбцы, используя предложение select в pyspark?

...