【问题标题】:How to remove multiple columns from a dataframe with column list [duplicate]如何使用列列表从数据框中删除多列[重复]
【发布时间】:2018-12-21 01:16:00
【问题描述】:

我有一个包含列名和数据框的变量列表。当列名与变量列表匹配时,我想从数据框中删除列。

列 -> "a","c"
数据框->

a b c d  
0 0 1 1  
1 1 1 1  

输出->

b d  
0 1  
1 1

请帮我解决一下。

【问题讨论】:

    标签: r dplyr tidyverse


    【解决方案1】:

    select_ 自 dplyr 0.7 起已弃用。有关详细信息,请参阅 select_ 文档。

    我相信新的推荐方法是使用选择辅助动词。

    使用 shadow 的例子。这将是: select(dataframe, -one_of(c("a", "b"))

    【讨论】:

      【解决方案2】:

      更新:Anders Swanson 指出您现在可以使用select 进行标准评估。所以以下工作:

      select(dataframe, -columns)
      

      以前的版本

      你可以使用select_和'-'一起使用,如下所示:

      # create data 
      columns <- c("a","c")
      dataframe <- read.table(text="a b c d
      0 0 1 1
      1 1 1 1 ", header = TRUE)
      # load dplyr package
      require(dplyr)
      # select columns
      select_(dataframe, .dots = paste0("-", columns))
      

      【讨论】:

        猜你喜欢
        • 2012-11-13
        • 2021-09-29
        • 2019-05-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-09-15
        • 2019-09-08
        相关资源
        最近更新 更多