我是 R 新手。我希望替换数据中 X 的缺失值。对于相同的“ID”和相同的“日”,当“时间”= 3 时,如何将“时间”= 1 和 2 时的“X”的缺失值替换为“X”的值
X:只有Time为3时才有效,其他都没有。
ID Day Time X
1 1 1 NA
1 1 2 NA
1 1 3 7.4
1 2 1 NA
1 2 3 6.2
2 1 1 NA
2 1 2 NA
2 1 3 7.1
2 2 3 5.9
2 2 2 NA
2 2 1 NA
我可以使用包 zoo 和 data.table 编写并运行以下代码,但后来当我检查数据时,它不起作用——当 time=1 和 2 时,X 值仍然具有所有缺失值。我的代码有什么问题吗?有什么建议么?我在 R 方面的经验非常有限。在此先感谢您!
setDT(data1)
data1 <- data1 [order(-Time),
X := na.locf(X),
by = .(ID, Day)]