Несколько агрегаций одного столбца с использованием pandas GroupBy.agg ()

Учитывая следующий (полностью перебитый) пример фрейма данных

import pandas as pd
import datetime as dt
df = pd.DataFrame({
         "date"    :  [dt.date(2012, x, 1) for x in range(1, 11)], 
         "returns" :  0.05 * np.random.randn(10), 
         "dummy"   :  np.repeat(1, 10)
})

существует ли встроенный способ применения двух разных функций агрегирования к одному и тому же столбцу без необходимости вызоваagg многократно?

Синтаксически неправильный, но интуитивно правильный способ сделать это будет:

# Assume `function1` and `function2` are defined for aggregating.
df.groupby("dummy").agg({"returns":function1, "returns":function2})

Очевидно, что Python не допускает дублирование ключей. Есть ли другой способ выразитьagg? Возможно список кортежей[(column, function)] будет работать лучше, чтобы несколько функций применялись к одному столбцу? Но похоже, что он принимает только словарь.

Есть ли обходной путь для этого помимо определения вспомогательной функции, которая просто применяет обе функции внутри нее? (Как это будет работать с агрегацией?)

Ответы на вопрос(3)

Ваш ответ на вопрос