【问题标题】:Remove rows with specific row numbers using dplyr's pipe function使用 dplyr 的管道函数删除具有特定行号的行
【发布时间】:2021-05-08 02:18:14
【问题描述】:

我正在寻找使用dplyr's pipe 函数按行号删除特定行的方法

library(dplyr)
head(mtcars)

现在假设我要删除行号 c(1, 4, 7)。通常我们会使用mtcars[-c(1, 4, 7), ] 来做同样的事情。

但是我想使用pipe 来做同样的事情。

有什么办法吗?

任何指针都将受到高度赞赏。

【问题讨论】:

标签: r


【解决方案1】:

我们可以使用filter

library(dplyr)

# vector for rows to remove
to_remove <- c(1, 4, 7)

mtcars %>%
  filter(!row_number() %in% to_remove)

【讨论】:

    【解决方案2】:

    我们可以使用slice

    library(dplyr)
    mtcars %>%
       slice(-c(1, 4, 7))
    

    或者如果我们想使用[

    mtcars %>%
          `[`(-c(1, 4, 7),)
    

    或者使用magrittr中的extract

    library(magrittr)
    mtcars %>%
        extract(-c(1, 4, 7),)
    

    【讨论】:

      猜你喜欢
      • 2018-08-23
      • 2010-12-07
      • 1970-01-01
      • 2018-08-28
      • 2021-12-14
      • 2020-11-07
      • 2013-03-24
      • 1970-01-01
      相关资源
      最近更新 更多