У меня есть DataFrame
со столбцами a
и b
, где b
содержит значения Y
или N
, соответствующие True
и False
.
Я хотел бы сгруппировать по a
, а затем для каждой группы получить среднее значение b's (meaning, the number of
True`s в группе, деленное на количество строк в этой группе).
What I 'до сих пор получается
data['b'] = data['b'].map({'Y': True, 'N': False})
data.groupby('a', as_index=False)['b'].mean()
Но я думаю, что это не направление ..
Пример данных:
a b
1 Y
1 Y
1 N
2 Y
2 Y
2 N
2 N
И вывод должен быть
a avg
1 2/3
2 1/2