J.K*_*.K. 5 select r conditional-statements dplyr
我可以使用dplyr列名位于外部向量中的条件来选择列吗?我发现一些帖子解释了如何使用名称向量对数据框进行子集化,但当向量中的某些名称在数据框中不存在时,我找不到帖子。
library(tidyverse)
library(tibble)
library(data.table)
col_names <- c('a', 'b', 'e')
rename <- dplyr::rename
select <- dplyr::select
set.seed(10002)
a <- sample(1:20, 1000, replace=T)
set.seed(10003)
b <- sample(letters, 1000, replace=T)
set.seed(10004)
c <- sample(letters, 1000, replace=T)
data <-
data.frame(a, b, c)
# I would like to choose a, b that are in col_names vector.
Run Code Online (Sandbox Code Playgroud)
akr*_*run 10
我们可以any_of使用select
library(dplyr)
data %>%
select(any_of(col_names))
Run Code Online (Sandbox Code Playgroud)
-输出
a b
1 1 e
2 4 e
3 13 f
4 8 m
5 10 z
6 3 y
...
Run Code Online (Sandbox Code Playgroud)