library(tidyverse)
This section has the code for the select() documentation.
tib <- tribble(~a, ~b, ~c, ~d,
1, 2, 3, 4,
5, 6, 7, 8)
print(tib)
## # A tibble: 2 x 4
## a b c d
## <dbl> <dbl> <dbl> <dbl>
## 1 1 2 3 4
## 2 5 6 7 8
glimpse(tib)
## Rows: 2
## Columns: 4
## $ a <dbl> 1, 5
## $ b <dbl> 2, 6
## $ c <dbl> 3, 7
## $ d <dbl> 4, 8
t1 <- select(tib, -b, -c)
print(t1)
## # A tibble: 2 x 2
## a d
## <dbl> <dbl>
## 1 1 4
## 2 5 8
select(tib, d, c)
## # A tibble: 2 x 2
## d c
## <dbl> <dbl>
## 1 4 3
## 2 8 7
tib <- select(tib,
X1 = d,
X2 = c,
a)
print(tib)
## # A tibble: 2 x 3
## X1 X2 a
## <dbl> <dbl> <dbl>
## 1 4 3 1
## 2 8 7 5
tibble_name <- tribble(~a, ~x, ~y, ~z,
1, 2, 3, 4,
5, 6, 7, 8)
select(tibble_name, x, y, z, everything())
## # A tibble: 2 x 4
## x y z a
## <dbl> <dbl> <dbl> <dbl>
## 1 2 3 4 1
## 2 6 7 8 5
tibble_name <- tribble(~a, ~g, ~h, ~m,
1, 2, 3, 4,
5, 6, 7, 8)
select(tibble_name,
a, #include column a
g:m #include columns g through m
)
## # A tibble: 2 x 4
## a g h m
## <dbl> <dbl> <dbl> <dbl>
## 1 1 2 3 4
## 2 5 6 7 8
select(tibble_name,
-(g:m) #drop columns g through m. The parentheses are necessary!
)
## # A tibble: 2 x 1
## a
## <dbl>
## 1 1
## 2 5
tib %>% select(where(~is.numeric(.) )) #also is.character or is.factor
## # A tibble: 2 x 3
## X1 X2 a
## <dbl> <dbl> <dbl>
## 1 4 3 1
## 2 8 7 5
tib %>% select(where(~(mean(.) > 10) )) #the ~ and . are required
## # A tibble: 2 x 0
tib <- tibble(a=1, b=1, d=1, e=1, f=1, g=1, h=1,
age_m=1, ss_m=1, age_f=1, ss_f=1,
yr21=1, yr22=1, x=1, y=1,z=1)
tib %>%
select(c(x,y,
f:h,
last_col(),
starts_with("yr"),
ends_with("_m"),
contains("_"),
matches("^[b-d]"),
everything()
))
## # A tibble: 1 x 16
## x y f g h z yr21 yr22 age_m ss_m age_f ss_f b
## <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 1 1 1 1 1 1 1 1 1 1 1 1 1
## # ... with 3 more variables: d <dbl>, a <dbl>, e <dbl>
tib %>%
select(-c(x,y,
f:h,
last_col(),
starts_with("yr"),
ends_with("_m"),
contains("_"),
matches("^[b-d]")
))
## # A tibble: 1 x 2
## a e
## <dbl> <dbl>
## 1 1 1