j'apprends R et je suis curieux ... je besoin d'une fonction qui fait cela:propageant des données dans un vecteur
> fillInTheBlanks(c(1, NA, NA, 2, 3, NA, 4))
[1] 1 1 1 2 3 3 4
> fillInTheBlanks(c(1, 2, 3, 4))
[1] 1 2 3 4
et je produit celui-ci ... mais je pense qu'il ya un plus R façon de le faire.
fillInTheBlanks <- function(v) {
## replace each NA with the latest preceding available value
orig <- v
result <- v
for(i in 1:length(v)) {
value <- v[i]
if (!is.na(value))
result[i:length(v)] <- value
}
return(result)
}
et son paramètre fromLast résout la question symétrique! (Je lis le code de na.locf.R maintenant et il est plein de choses à lire) – mariotomo
source intéressante. J'ajoute une autre réponse, distillée de la vôtre et de la bibliothèque du zoo. – mariotomo