У меня есть датафрейм разной длины в каждой группе. Например,
gid val1 val2
1 3 5
1 11 15
1 12 5
1 18 6
1 8 8
1 18 7
1 18 8
2 29 21
2 27 23
....
Затем я хочу выполнить
def func(x):
d = {}
d['first2'] = x['val1'].first(5).mean()
return pd.Series(...)
grouped = df.groupby(['gid']).apply(func)
таким образом, чтобы получить среднее () первых пяти столбцов x ['val1'], которое находится в та же группа.
Есть ли способ выполнить вышеуказанные операции?
Есть ли способ выполнить вышеуказанные операции, но с последними половинными столбцами а не первые пять столбцов?
Заранее спасибо.