【发布时间】:2025-08-05 08:35:02
【问题描述】:
我需要用给定列的不同行的非 NA 值替换每一行的 NA。
在 var2 列中,名称之间没有唯一值。即,可能有一个跨 id 共享的 var2 值。
name<- rep(c("yygy","gryh","glqy","abye"),4)
var2<- c(101,102,102,104,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA,NA)
data.frame(name,var2)
name var2
1 yygy 101
2 gryh 102
3 glqy 102
4 abye 104
5 yygy NA
6 gryh NA
7 glqy NA
8 abye NA
9 yygy NA
10 gryh NA
11 glqy NA
12 abye NA
13 yygy NA
14 gryh NA
15 glqy NA
16 abye NA
基本上在上面的示例中,我希望在所有匹配的名称值中重复 var2 值,即对于 yygy 将有四行,每行有 101。
我在想一个来自 dplyr 的 join 函数可以工作,但不能完全实现。当然,这可以通过循环来完成,但理想情况下是寻找 tidyr/dplyr 方法或应用?
【问题讨论】: