トップ 一覧 検索 ヘルプ RSS ログイン 印刷

pivot_wider()の変更点

  • 追加された行はこのように表示されます。
  • 削除された行はこのように表示されます。
!ピボットテーブル

table()を参照

!仕訳を集計する

とりあえず仕訳を伝票種類別に整理したいときなど

以下、Groupは伝票種別、Itemは勘定科目、Numは金額とする

 library(tidyverse)
 Group = c("A","A","B","B","B","C","C","C","C","D","D","D","D")
 Item = c("X","Y","X","Y","Z","X","Z","P","Q","X","Y","Z","Z")
 Num = c(1,3,5,7,4,3,9,8,1,0,9,4,3)

 df = tibble(Group, Item, Num)


 #df |>  group_by(Group) |> pivot_wider(names_from = Item, values_fn = sum(Num)) #これはエラーになる
 df |> pivot_wider(id_cols = Group, names_from = Item, values_from = Num, values_fn = sum)


出力は

# A tibble: 4 × 6
  Group     X     Y     Z     P     Q
  <chr> <dbl> <dbl> <dbl> <dbl> <dbl>
1 A         1     3    NA    NA    NA
2 B         5     7     4    NA    NA
3 C         3    NA     9     8     1
4 D         0     9     7    NA    NA
 # A tibble: 4 × 6
   Group     X     Y     Z     P     Q
   <chr> <dbl> <dbl> <dbl> <dbl> <dbl>
 1 A         1     3    NA    NA    NA
 2 B         5     7     4    NA    NA
 3 C         3    NA     9     8     1
 4 D         0     9     7    NA    NA