可能重复:
使用先前的非 NA 值填充向量中的 NA?
我一直试图解决这个问题,但我似乎无法找到解决这个编码问题的方法。我喜欢创建一个列向量,它会重复相同的值,直到下一个非NA
列出现在另一列中。所以这里有一个表格来说明我想要实现的目标(第 2 栏)。
[,1] [,2]
[1,] A a1
[2,] NA a1
[3,] NA a1
[4,] B a2
[5,] NA a2
[6,] A a3
很抱歉造成混乱。之前写这篇文章的时候,我一定是真的很紧张。我已对第 2 列进行了更正(请参见上文)。阅读您的帖子后,这是我想出的代码,虽然它效率不高也不优雅:
d <- paste("a", 1:sum(!is.na(column1)), sep="") # get a1, a2, a3
column2 <- rep(NA, length(column1) #create empty vector w/ column1 length
column2[!is.na(colum1)] <- d #when col1 has a value, populate col2 with a1
e <- na.locf.default(column2) #fill NAs in col2 with previous value