Как найти 10 максимальных чисел со столбца

У меня есть 3 файла .csv с базой данных. В каждой из них есть по несколько столбцов. Я загрузил эти 3 файла в R studio:

Councontcode <- read.csv(file.choose(), header=TRUE)
hep <- read.csv(file.choose(), header=TRUE)
het <- read.csv(file.choose(), header=TRUE)

В базе данных hep есть столбец под названием TotalUSDPrize, в нем указаны 1000 разных чисел в виде призовых денег. Мне нужно найти 10 максимальных чисел с этого столбца, и связать их с нужным игроком получившим эти деньги. Столбец с игроками называется CurrentHandle. Связав эти 2 столбца, мне нужно вычислить 10 игроков у которых были самые большие призовые.

Остановился пока что на том, что смог вычислить только самую большую сумму со столбца TotalUSDPrize использовав команду:

max(hep$TotalUSDPrize) 

Ответы (2 шт):

Автор решения: aleksandr barakin

вот есть у нас таблица (вызов set.seed() тут исключительно для воспроизводимости случайной сортировки значений переменной приз):

set.seed(42)
таблица <- data.frame(приз=sample(100:104),игрок=letters[1:5],stringsAsFactors=F)
таблица
#>   приз игрок
#> 1  104     a
#> 2  103     b
#> 3  100     c
#> 4  101     d
#> 5  102     e

выведем её содержимое, отсортировав по убыванию значений переменной приз:

таблица[order(таблица$приз,decreasing=T),]
#>   приз игрок
#> 1  104     a
#> 2  103     b
#> 5  102     e
#> 4  101     d
#> 3  100     c

но из всей таблицы нам ведь нужны только значения переменной игрок:

таблица[order(таблица$приз,decreasing=T),]$игрок
#> [1] "a" "b" "e" "d" "c"

и даже не все значения, а, например, первые три:

таблица[order(таблица$приз,decreasing=T),]$игрок[1:3]
#> [1] "a" "b" "e"

ну, вот мы и вычислили игроков, получивших три максимальных приза.

Created on 2021-10-22 by the reprex package (v0.2.1)

→ Ссылка
Автор решения: rg4s

Также можно воспользоваться функциями из библиотеки dplyr:

set.seed(2021)

library(dplyr)

table <- tibble(player = c("a", "b", "c", "d", "e"), win = sample(100:104))

table %>%
  # отсортируем win по убыванию
  arrange(desc(win)) %>% 
  # возьмем топ-3 значения
  top_n(3)

# A tibble: 3 x 2
  player   win
  <chr>  <int>
1 c        104
2 d        103
3 b        102
→ Ссылка