Hi,
Here is one implementation:
#Fake data
myData = data.frame(x = 1:100, y = runif(100))
rownames(myData) = paste0("row", 1:nrow(myData))
#Filter
rownames(myData[order(myData$y, decreasing = T),])[1:10]
And this is a tidyverse implementation:
library(tidyverse)
#Fake data
myData = data.frame(x = 1:100, y = runif(100))
rownames(myData) = paste0("row", 1:nrow(myData))
#Filter
myData %>% rownames_to_column("rowNames") %>%
arrange(desc(y)) %>% slice(1:10) %>% pull(rowNames)
Hope this helps,
PJ