按因子填充序列

C_p*_*psy 2 r

我需要用$ Country的因子填充缺少序列值的$ Year.$ Count列可以用0填充.

Country Year Count
A       1    1
A       2    1
A       4    2
B       1    1
B       3    1
Run Code Online (Sandbox Code Playgroud)

所以我最终得到了

Country Year Count
A       1    1
A       2    1
A       3    0
A       4    2
B       1    1
B       2    0
B       3    1
Run Code Online (Sandbox Code Playgroud)

希望这是明确的家伙,提前谢谢!

Lam*_*mia 5

这是一个dplyr/ tidyr解决方案使用completefull_seq:

library(dplyr)
library(tidyr)
df %>% group_by(Country) %>% complete(Year=full_seq(Year,1),fill=list(Count=0))
  Country  Year Count
    <chr> <dbl> <dbl>
1       A     1     1
2       A     2     1
3       A     3     0
4       A     4     2
5       B     1     1
6       B     2     0
7       B     3     1
Run Code Online (Sandbox Code Playgroud)