Я хочу сгруппировать цвета, посчитать количество вхождений этого цвета в столбце и создать новый столбец within_range
, в котором будет количество случаев, где: min_amount <= amount <= max_amount
df = pd.DataFrame({'color': ['red', 'yellow', 'blue', 'red','yellow'],
'amount': [0.5, 0.25, 0.125, 0.9, 0.8],
'min_amount': [0, 0.2, 0.1, 0.5, 0.7],
'max_amount':[1, 0.7, 0.2, 0.6, 0.9]})
Подсчетколичество вхождений можно сделать, используя:
df.groupby('color').agg({'color':'count'})
но как получить ожидаемый результат?
Ожидаемый результат:
color count within_range
red 2 1
yellow 2 2
blue 1 1