Python-polars Объединить значения столбца в объединенную строкуPython

Программы на Python
Ответить
Anonymous
 Python-polars Объединить значения столбца в объединенную строку

Сообщение Anonymous »

Я пытаюсь написать процедуру агрегирования, в которой значения в столбцах объединяются на основе оператора group_by.
Я пытаюсь вызвать специальную функцию для агрегирования, а также пытаюсь чтобы избежать использования лямбда-функций (насколько я понимаю, лямбда-функции выполняются только последовательно, поэтому производительность будет ниже). Вот мой код:

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

def agg_ll_field(col_name) -> pl.Expr:
return ';'.join(pl.col(col_name).drop_nulls().unique().sort())

dfa = df.lazy()\
.group_by('SharedSourceSystem', 'FOPortfolioName').agg(
agg_ll_field('BookingUnits').alias('BOOKG_UNIT')
).collect()
Я постоянно получаю сообщение об ошибке:

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

agg_ll_field: Unexpected:  can only join an iterable   
Сможет ли кто-нибудь помочь решить эту проблему?
Вместо этого я попробовал использовать функцию map_groups — кажется, это работает, но я стараюсь избегать map_groups, поскольку производительность должна быть хуже.

Подробнее здесь: https://stackoverflow.com/questions/759 ... ted-string
Ответить

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

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

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

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

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