我有一个包含 3 列的数据框,但第三列有一些缺失值,需要用以下逻辑填充。
期望的结果是第三列(部分)上没有缺失值,要填充它,我们必须找到第一个“周”,其中为该特定“项目”(第一列)填充了“部分”值,并且然后通过向下复制“part”来填充它,直到找到“part”的新值。然后向下重复复制过程,直到找到新的“项目”行。
最后,对现在正在上升的每个“项目”重复填充过程,因为在第一个“周”填充“部分”之前可能存在一些空白。
这是示例数据框:
item=c(rep("A",7),rep("B",3),rep("D",5))
part=c("","","X","","Y","","","","Z","","","T","U","","")
week=c("1","2","3","4","5","6","7","1","2","3","10","11","12","13","14")
df=data.frame(item,week,part)
所需的结果数据框如下所示:
item2=c(rep("A",7),rep("B",3),rep("D",5))
part2=c("X","X","X","X","Y","Y","Y","Z","Z","Z","T","T","U","U","U")
week2=c("1","2","3","4","5","6","7","1","2","3","10","11","12","13","14")
df2=data.frame(item2,week2,part2)
非常感谢帮助,谢谢。