如何在数据框中找到列的5个最高值
我尝试了order()
函数,但它只给出了行的索引,而我需要列中的实际数据。这是我到目前为止所做的:
tail(order(DF$column, decreasing=TRUE),5)
答案 0 :(得分:0)
您需要将order
的结果传回DF
:
DF <- data.frame( column = 1:10,
names = letters[1:10])
order(DF$column)
# 1 2 3 4 5 6 7 8 9 10
head(DF[order(DF$column),],5)
# column names
# 1 1 a
# 2 2 b
# 3 3 c
# 4 4 d
# 5 5 e
您确认order
只是给出了索引。然后,您需要将这些索引传递给数据框,以便在那些索引处选择行。
此外,正如评论中所述,如果您愿意,可以使用head
代替tail
decreasing = TRUE
,但这是品味问题。