这是一些利用dplyr从mtcars数据集中分组和传播数据的简单代码。
library(dplyr)
mtcars.df <- mtcars %>%
group_by(disp, cyl) %>%
summarise(Qty = n())
mtcars.spread <- mtcars.df %>%
spread(cyl, Qty)
str(mtcars.spread)
当你看到'mtcars.spread'tibble的结构时,你会注意到'4'和'6'柱面变量被列为整数,而'8'柱面变量有所有这些混乱
- attr(*,“vars”)= chr“disp”
- attr(*,“drop”)= logi TRUE
- attr(*,“indices”)= 27的列表
附在上面。我哪里做错了?在使用group_by命令后,我是否应该在整个过程中取消组合?
Classes ‘grouped_df’, ‘tbl_df’, ‘tbl’ and 'data.frame': 27 obs. of 4 variables:
$ disp: num 71.1 75.7 78.7 79 95.1 ...
$ 4 : int 1 1 1 1 1 1 1 1 1 1 ...
$ 6 : int NA NA NA NA NA NA NA NA NA NA ...
$ 8 : int NA NA NA NA NA NA NA NA NA NA ...
- attr(*, "vars")= chr "disp"
- attr(*, "drop")= logi TRUE
- attr(*, "indices")=List of 27
..$ : int 0
..$ : int 1
..$ : int 2
..$ : int 3
..$ : int 4
..$ : int 5
..$ : int 6
..$ : int 7
..$ : int 8
..$ : int 9
..$ : int 10
..$ : int 11
..$ : int 12
..$ : int 13
..$ : int 14
..$ : int 15
..$ : int 16
..$ : int 17
..$ : int 18
..$ : int 19
..$ : int 20
..$ : int 21
..$ : int 22
..$ : int 23
..$ : int 24
..$ : int 25
..$ : int 26
- attr(*, "group_sizes")= int 1 1 1 1 1 1 1 1 1 1 ...
- attr(*, "biggest_group_size")= int 1
- attr(*, "labels")='data.frame': 27 obs. of 1 variable:
..$ disp: num 71.1 75.7 78.7 79 95.1 ...
..- attr(*, "vars")= chr "disp"
..- attr(*, "drop")= logi TRUE