Polars применяет одну и ту же пользовательскую функцию к нескольким столбцам в группе поPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Polars применяет одну и ту же пользовательскую функцию к нескольким столбцам в группе по

Сообщение Anonymous »

Как лучше всего применить пользовательскую функцию к нескольким столбцам в Polars? В частности, мне нужна функция для ссылки на другой столбец в кадре данных. Допустим, у меня есть следующее:

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

df = pl.DataFrame({
'group': [1,1,2,2],
'other': ['a', 'b', 'a', 'b'],
'num_obs': [10, 5, 20, 10],
'x': [1,2,3,4],
'y': [5,6,7,8],
})
И я хочу сгруппировать по группам и вычислить среднее значение x и y, взвешенное по num_obs. Я могу сделать что-то вроде этого:

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

variables = ['x', 'y']
df.group_by('group').agg((pl.col(var) * pl.col('num_obs')).sum()/pl.col('num_obs').sum() for var in variables)
но мне интересно, есть ли способ получше. Кроме того, я не знаю, как добавить к этому подходу другие агрегаты, но есть ли способ добавить pl.sum('n_obs')?

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

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

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

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

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

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

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