Я понимаю, что это очень простой вопрос, но, к сожалению, я не могу понять это.Я хочу сгруппировать по позициям и вернуть максимальное общее значение для каждой отдельной позиции.Это просто.Тем не менее, я не могу найти способ также включить столбец плеера дополнительно в результирующий кадр данных.Как я могу создать фрейм данных, который включает в себя одного игрока с максимальным счетом для каждой позиции?
Данный результат фрейма данных:
result = pd.DataFrame([
{'position': 'Top', 'grandtotal': 36.72, 'player': 'Joe'},
{'position': 'Top', 'grandtotal': 101.18, 'player': 'Bill'},
{'position': 'Middle', 'grandtotal': 33.32, 'player': 'Jim'},
{'position': 'Middle', 'grandtotal': 72.62, 'player': 'Him'},
{'position': 'Bottom', 'grandtotal': 42.61, 'player': 'Tim'},
{'position': 'Bottom', 'grandtotal': 83.98, 'player': 'Slim'},])
Я могу вернуть позицию и общий итог с помощью:
playerframe = result.groupby(['player', 'position']).sum().reset_index()
Дайте мне:
Top 101.18
Middle 72.62
Bottom 83.98
Мне просто нужно указать имя игрока, набравшего наибольшее количество очков!Кажется, все должно быть так просто.Я хотел бы:
Top Bill 101.18
Middle Him 72.62
Bottom Slim 83.98