У меня есть структура данных pandas, структурированная так:
value
lab
A 50
B 35
C 8
D 5
E 1
F 1
Это всего лишь пример, фактический кадр данных больше, но следует той же структуре.
Образец кадра данных был создан с этимдве строки:
df = pd.DataFrame({'lab':['A', 'B', 'C', 'D', 'E', 'F'], 'value':[50, 35, 8, 5, 1, 1]})
df = df.set_index('lab')
Я хотел бы объединить строки, значение которых меньше заданного порога: все эти строки должны быть заменены одной строкой, значение которой является суммой замещенных строк.
Например, если я выберу порог = 6, ожидаемый результат должен быть следующим:
value
lab
A 50
B 35
C 8
X 7 #sum of D, E, F
Как я могу это сделать?
Я думал использовать groupby()
, но все примеры, которые я видел, включали использование отдельного столбца для группировки, поэтому я не знаю, как использовать его в этом случае.
Я могу выбрать строки меньше моего порога с помощью loc
,делая df.loc[df['value'] < threshold]
, но я не знаю, как суммировать только эти строки и оставить остальную часть кадра без изменений.