Показать группы с 0 group_by dplyr - PullRequest
0 голосов
/ 19 октября 2018

У меня есть фрейм данных, например.

a<-data.frame(
   year=c(2001,2001,2002,2004,2001,2002,2004),
   binary=c(1,0,1,0,1,0,0))

Я пытаюсь, например:

a %>% group_by(year) %>% count()

Я хотел бы вывод:

year    binary   n
2001    0        1
2001    1        1
2002    1        1
2002    0        1
2004    0        1
2004    1        0

Я хочупостроите график, сколько образцов имеет 1 фенотип, но в deos group_by не показана 1 группа за 2004 год, поскольку она имеет счет 0. Как я могу сделать это?

1 Ответ

0 голосов
/ 19 октября 2018

Я думаю, что вы ищете tidyr::complete():

library(dplyr)
library(tidyr)

a<-data.frame(
  year=c(2001,2001,2002,2004,2001,2002,2004),
  binary=c(1,0,1,0,1,0,0))

a %>% 
  group_by(year) %>% 
  count(binary) %>% 
  ungroup() %>% 
  complete(year, binary, fill = list(n = 0))
#> # A tibble: 6 x 3
#>    year binary     n
#>   <dbl>  <dbl> <dbl>
#> 1  2001      0     1
#> 2  2001      1     2
#> 3  2002      0     1
#> 4  2002      1     1
#> 5  2004      0     2
#> 6  2004      1     0

Создано в 2018-10-19 годах представлением пакета (v0.2.1)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...