gpt4 book ai didi

r - 如何在R中获得前n个值及其索引?

转载 作者:行者123 更新时间:2023-12-02 06:32:06 24 4
gpt4 key购买 nike

我有一个只有一列的数据框,我想用它的索引找到最大的三个值。例如,我的数据框df看起来像:

  distance
1 1
2 4
3 2
4 3
5 4
6 5
7 5

我想用其索引找到最大的3值,所以我的预期结果是:
  distance    
6 5
7 5
2 4
5 4
4 3

我怎样才能做到这一点?由于我只有一列,是否也可以使用列表而不是数据框?

最佳答案

我们可以将sortindex.return=TRUE一起使用,以在list中返回带有索引的值。然后,我们可以基于“x”中的前3个唯一元素对list进行子集设置。

lst <- sort(df1$distance, index.return=TRUE, decreasing=TRUE)
lapply(lst, `[`, lst$x %in% head(unique(lst$x),3))
#$x
#[1] 5 5 4 4 3

#$ix
#[1] 6 7 2 5 4

关于r - 如何在R中获得前n个值及其索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32565788/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com