dplyr::select
dplyr::select
は、tidyverse コレクションの dplyr パッケージに含まれる関数で、データフレームから指定した列を選択するために使用される。
列を選択する様々な方法を利用できるため、柔軟に列の選択をすることができる。
クイックリファレンス
library(tidyverse)
df %>%
select(col1, col2, ...)
penguins %>%
select(species, starts_with("bill"))
# # A tibble: 344 × 3
# species bill_length_mm bill_depth_mm
# <fct> <dbl> <dbl>
# 1 Adelie 39.1 18.7
# 2 Adelie 39.5 17.4
# 3 Adelie 40.3 18
# 4 Adelie NA NA
# 5 Adelie 36.7 19.3
# 6 Adelie 39.3 20.6
# 7 Adelie 38.9 17.8
# 8 Adelie 39.2 19.6
# 9 Adelie 34.1 18.1
# 10 Adelie 42 20.2
# # ℹ 334 more rows
# # ℹ Use `print(n = ...)` to see more rows
基本構文
select(.data, ...,)
引数 | 説明 |
---|---|
.data | データフレーム(または tibble)。 |
... | 選択する列名や列番号。<tidy-select> も指定可能。 |
使用例
1. 指定した列を選択
penguins %>%
select(species, island)
# # A tibble: 344 × 2
# species island
# <fct> <fct>
# 1 Adelie Torgersen
# 2 Adelie Torgersen
# 3 Adelie Torgersen
# 4 Adelie Torgersen
# 5 Adelie Torgersen
# 6 Adelie Torgersen
# 7 Adelie Torgersen
# 8 Adelie Torgersen
# 9 Adelie Torgersen
# 10 Adelie Torgersen
# # ℹ 334 more rows
# # ℹ Use `print(n = ...)` to see more rows
列名を変更して選択することも出来る。
penguins %>%
select(SPECIES = species, ISLAND = island)
# # A tibble: 344 × 2
# SPECIES ISLAND
# <fct> <fct>
# 1 Adelie Torgersen
# 2 Adelie Torgersen
# 3 Adelie Torgersen
# 4 Adelie Torgersen
# 5 Adelie Torgersen
# 6 Adelie Torgersen
# 7 Adelie Torgersen
# 8 Adelie Torgersen
# 9 Adelie Torgersen
# 10 Adelie Torgersen
# # ℹ 334 more rows
# # ℹ Use `print(n = ...)` to see more rows
2. 指定した列以外を選択
penguins %>%
select(!species, !island)
# # A tibble: 344 × 5
# bill_length_mm bill_depth_mm flipper_length_mm body_mass_g sex
# <dbl> <dbl> <int> <int> <fct>
# 1 39.1 18.7 181 3750 male
# 2 39.5 17.4 186 3800 female
# 3 40.3 18 195 3250 female
# 4 NA NA NA NA NA
# 5 36.7 19.3 193 3450 female
# 6 39.3 20.6 190 3650 male
# 7 38.9 17.8 181 3625 female
# 8 39.2 19.6 195 4675 male
# 9 34.1 18.1 193 3475 NA
# 10 42 20.2 190 4250 NA
# # ℹ 334 more rows
# # ℹ Use `print(n = ...)` to see more rows