r - dplyr:选择除向量中包含的变量之外的所有变量

标签 r select dplyr

这应该是一个简单的问题,但我很挣扎。

我有一个变量名称向量,我想从数据框中排除它:

df <- data.frame(matrix(rexp(50), nrow = 10, ncol = 5))
names(df) <- paste0(rep("variable_", 5), 1:5)

excluded_vars <- c("variable_1", "variable_3")

我本以为只需使用 - 排除 select 语句中的对象就可以了:

select(df, -excluded_vars)

但我收到以下错误:

Error in -excluded_vars : invalid argument to unary operator

使用select_()时也是如此

有什么想法吗?

最佳答案

您需要使用one_of函数:

select(df, -one_of(excluded_vars))

请参阅 selectdplyr 文档中有关有用函数的部分。了解有关根据变量名称进行选择的更多信息。

关于r - dplyr:选择除向量中包含的变量之外的所有变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49515311/

相关文章:

r - ggplot 在日期轴上添加垂直线

r - 在 R 中使用 readLines(url) 时如何避免 "too many redirects"错误?

sql - 如果 1 行满足条件,则排除 ID 的所有行

使用 dplyr 的 R 滤波器矩阵

r - 错误: processing vignette . ..: 'what'必须是字符串或函数

R:计算数据帧中具有相同标识符的元素之间的偏移差异

javascript - 是否可以使用具有统一(jquery 插件)的不同大小(宽度)的选择框?

javascript - 通过PHP函数获取<select>属性

r - 使用 sparklyr 将列数据类型更改为因子

r - "except"函数的 R 等效项是什么?