Если у меня есть список объектов, как мне отсортировать их по наибольшей группе?
например. Я прочитал этот CSV в список объектов
FirstName, LastName, Age
Michael, Moore, 64
John, Doe, 22
John, Brown, 44
Peter, Piper, 46
John, Johnson, 14
Peter, Rabbit, 5
Если я группирую по FirstName, я получаю
FirstName, Count
Michael, 1
John, 3
Peter, 2
Если сортировать по убыванию по количеству, я получаю
FirstName, Count
John, 3
Peter, 2
Michael, 1
Как мне теперь отсортировать первый список по порядку этой отсортированной группы?
FirstName, LastName, Age
John, Doe, 22
John, Brown, 44
John, Johnson, 14
Peter, Piper, 46
Peter, Rabbit, 5
Michael, Moore, 64
Пока у меня есть:
val people: List<Person> = readNames(csv)
val group = positions.groupingBy { it.firstName }.eachCount()
val sorted = group.toList().sortedByDescending { (key, value) -> value }