【发布时间】:2016-06-20 17:56:29
【问题描述】:
我有一个要删除的数据框和该数据框中的列列表。我们以iris 数据集为例。我想删除 Sepal.Length 和 Sepal.Width 并仅使用剩余的列。如何使用 dplyr 包中的 select 或 select_ 执行此操作?
这是我迄今为止尝试过的:
drop.cols <- c('Sepal.Length', 'Sepal.Width')
iris %>% select(-drop.cols)
-drop.cols 中的错误:一元运算符的参数无效
iris %>% select_(.dots = -drop.cols)
-drop.cols 中的错误:一元运算符的参数无效
iris %>% select(!drop.cols)
!drop.cols 中的错误:参数类型无效
iris %>% select_(.dots = !drop.cols)
!drop.cols 中的错误:参数类型无效
我觉得我遗漏了一些明显的东西,因为这些似乎是一个应该已经存在的非常有用的操作。在 Github 上,有人发帖 a similar issue,Hadley 说要使用“负索引”。这就是(我认为)我尝试过的方法,但无济于事。有什么建议吗?
【问题讨论】: