概要
tidyr
パッケージに含まれるpivot_longer_spec(), build_longer_spec()
は、pivot_longer()
のより低レベルなインターフェイスを提供します。基本的な使い方は解説しないため、基本的な使い方を知りたい方はpivot_longer()
を参照してください。
関連ページ
関数
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | # 仕様書に従ってpivot_longer()を実施する pivot_longer_spec ( data, spec, names_repair = "check_unique" , values_drop_na = FALSE , values_ptypes = list () ) # 仕様書の作成 build_longer_spec ( data, cols, names_to = "name" , values_to = "value" , names_prefix = NULL , names_sep = NULL , names_pattern = NULL , names_ptypes = NULL ) |
引数 | 指定 | 説明 |
---|---|---|
data | 必須 | データフレーム |
spec | 必須 | 変換する条件を記した仕様書 |
pivot_longer()
を参照してください使い方
解説用データフレーム
1 2 3 4 5 | tbl <- tibble ( id = c (1, 2, 3), x1 = c ( 'A' , 'B' , 'C' ), x2 = c ( 'a' , 'b' , NA ), ) |
> tbl # A tibble: 3 x 3 id x1 x2 <dbl> <chr> <chr> 1 1 A a 2 2 B b 3 3 C NA |
1.基本的な使い方
1 2 3 4 5 | # specオブジェクトを作成 spec <- build_longer_spec (tbl, cols = c (x1, x2)) # 整然化を行う pivot_longer_spec (tbl, spec) |
> spec # A tibble: 2 x 3 .name .value name <chr> <chr> <chr> 1 x1 value x1 2 x2 value x2 # A tibble: 6 x 3 id name value <dbl> <chr> <chr> 1 1 x1 A 2 1 x2 a 3 2 x1 B 4 3 x2 b 5 3 x1 C 6 3 x2 NA |
2.仕様書の中身
処理の内容を記した仕様書(spec)
をpivot_longer_spec()
に渡すことで動作します。仕様書の中身と対応する引数を以下に示します。

余談ですが、仕様書の構成はpivot_wider_spec()
と同じです。