Как найти максимальное значение, зависящее от двух столбцов?

#python #pandas #dataframe #group-by

#python #pandas #фрейм данных #группировка по

Вопрос:

что у меня есть?

У меня есть фрейм данных, который выглядит так:

       id1   id2      max_value   
0      1     3       50748.0     
1      1     3       50631.0     
2      1     4       55876.0     
3      1     4       56424.0     
4      1     5       28242.0     
5      1     5       28316.0     
  

что я хочу получить?

для каждого id1, id2 я хочу получить max_value. для примера выше:

       id1   id2      max_value   
0      1     3       50748.0     
1      1     4       56424.0     
2      1     5       28316.0     

  

что я пробовал?

Я пытался использовать groupby внутри groupby, но безуспешно

Ответ №1:

Ответ

Я нашел правильный ответ: groupby с 2 столбцами

 df = df.groupby(['id1', 'id2'])['max_value'].agg('max').reset_index()