概要
tidyrパッケージに含まれるunite()は、指定した列の値を結合する関数です。
関連ページ
関数
unite(data, col, ..., sep = "_", remove = TRUE, na.rm = FALSE)
| 引数 | 指定 | 説明 | 
|---|---|---|
| data | 必須 | データフレーム | 
| col | 必須 | 結合後の値を格納する列名を指定する | 
| … | 必須 | 結合したい値を持つ列名を指定する セレクトヘルパー関数で指定することも可能です  | 
| sep | 任意 | 結合に使用する接続文字を指定する | 
| remove | 任意 | 結合前の値を削除したくない場合は FALSE を指定する | 
| na.rm | 任意 | 欠損値を結合の対象にしたくない場合は TRUE を指定する | 
使い方
解説用データフレーム
df <- tibble(
  x1 = c('A', 'B', NA),
  x2 = c(1, 2, 3),
)
> df
# A tibble: 3 x 2
  x1       x2
  <chr> <dbl>
1 A         1
2 B         2
3 NA        3
1.値の結合
1-1.基本的な使い方
# 列y1に列x1, x2を結合した値を格納する
unite(df, col = y1, x1, x2)
# A tibble: 3 x 1
  y1
  <chr>
1 A_1
2 B_2
3 NA_3
1-2.接続詞を変更する
# 列y1に列x1, x2を '-' で結合した値を格納する
unite(df, col = y1, x1, x2, sep = '-')
# A tibble: 3 x 1
  y1
  <chr>
1 A-1
2 B-2
3 NA-3
1-3.欠損値を結合の対象外にする
# 列y1に欠損値を除外した列x1, x2を結合した値を格納する
unite(df, col = y1, x1, x2, na.rm = TRUE)
# A tibble: 3 x 1
  y1
  <chr>
1 A_1
2 B_2
3 3
2.オプション
2-1.結合前の値を保持する
# 列y1に列x1, x2を結合した値を格納し、結合前の列を保持する
unite(df, col = y1, x1, x2, remove = FALSE)
# A tibble: 3 x 3
  y1    x1       x2
  <chr> <chr> <dbl>
1 A_1   A         1
2 A_2   B         2
3 NA_3  NA        3