在 r 中,如何根据另一个变量的同一子集中该列的其他行中的值填充单元格?

问题描述 投票:0回答:1

在给定的变量 A 中,我如何将变量 B 的非 NA 值转换为在该列中与 NA 共享的单元格,同时保留变量 C 中的 NA?

变量A 变量B 可变C
1 X 1.4
2 X NA NA
3 Y 1.3
4 Y NA NA
5 Y NA NA
6 Z NA NA
7 Z 弗兰 1.7
8 Z NA NA
9 Z NA NA

我遇到这种情况是通过使用 complete() 函数来创建变量 A 与另一个变量的所有可能组合,为了简单起见,我在上面没有包括它。

r na
1个回答
0
投票

不确定你想要什么,也许这个:

df <- data.frame(
  VarA = c("X","X","Y","Y","Y"),
  VarB = c("Joe",NA,"Jane",NA,NA),
  VarC = c(1.4,NA,1.3,NA,NA)
)

df %>%
  group_by(VarA) %>%
  fill(c(VarB,VarC))
© www.soinside.com 2019 - 2024. All rights reserved.