【问题标题】:Retrieve Top AND Bottom Values R Dataframe检索顶部和底部值 R 数据框
【发布时间】:2021-12-21 16:25:18
【问题描述】:

寻找一种按值选择前 3 行和后 3 行的方法。我曾尝试将 slice_max() 与 slice_min() 结合使用,但没有成功。

id  value
a  0.9
b  0.2
c -0.4
d -0.9
e  0.6
f  0.8
g -0.3
h  0.1
i  0.2
j  0.5
k -0.2

# Desired output: <br>
a  0.9
f  0.8
e  0.6
d -0.9
c -0.4
g -0.3

【问题讨论】:

    标签: r dplyr tidyverse data-manipulation


    【解决方案1】:

    dplyr

    dat %>%
      filter(!between(dense_rank(value), 4, n() - 4))
    #   id value
    # 1  a   0.9
    # 2  c  -0.4
    # 3  d  -0.9
    # 4  e   0.6
    # 5  f   0.8
    # 6  g  -0.3
    

    dat %>%
      arrange(value) %>%
      slice( unique(c(1:3, n() - 0:2)) )
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-04-27
      • 1970-01-01
      • 1970-01-01
      • 2016-08-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多