在R中的条件后添加填充行

在R中的条件后添加填充行,r,tidyverse,rows,fill,R,Tidyverse,Rows,Fill,我基本上希望每个唯一的id都有三行。 每个唯一id必须具有种类为1、种类为2、种类为3的行 有些已经有了所有三个,但有些只有一行,带有观察值,例如,只有第1类和第2类。 我还想为新添加的行用“0”(而不是NA)填充值A和B 我对R很陌生,所以我真的不知道如何开始 id = c("u_1", "u_1", "b_1", "u_2", "u_2", "u_2") kind = c(

我基本上希望每个唯一的id都有三行。 每个唯一id必须具有种类为1、种类为2、种类为3的行

有些已经有了所有三个,但有些只有一行,带有观察值,例如,只有第1类和第2类。 我还想为新添加的行用“0”(而不是NA)填充值A和B

我对R很陌生,所以我真的不知道如何开始

id = c("u_1", "u_1", "b_1", "u_2", "u_2", "u_2")
kind = c("1", "2", "1", "1", "2", "3")
A = c(3, 4, 11, 3, 4, 6)
B = c(4, 1, 6, 2, 3, 8)

df <- data.frame(id, kind, A, B)
id=c(“u_1”、“u_1”、“b_1”、“u_2”、“u_2”、“u_2”)
种类=c(“1”、“2”、“1”、“1”、“2”、“3”)
A=c(3,4,11,3,4,6)
B=c(4,1,6,2,3,8)

df尝试使用
tidyr::complete

library(tidyr)
id=c(“u_1”、“u_1”、“b_1”、“u_2”、“u_2”、“u_2”)
种类=c(“1”、“2”、“1”、“1”、“2”、“3”)
A=c(3,4,11,3,4,6)
B=c(4,1,6,2,3,8)
df#A tibble:9 x 4
#>A类B类
#>      
#>1 b_11 6
#>2 b_1 2 0 0 0
#>3 b_1 3 0 0
#>4 u_1 1 3 4
#>5 u_1 2 4 1
#>6 u_1 3 0 0
#>7 u_2 1 3 2
#>8 u_2 4 3
#>9 u_2 3 6 8

由(v2.0.0)于2021-06-04创建

噢,哇,这是一个快速修复!非常感谢你。我真的认为我必须为这样的东西写一行又一行的代码。:d在我发现
tidyr::complete
之前,我就是这么做的。我确实必须看更多的软件包:)再次感谢。祝你周末愉快!