Você pode ter alguns problemas com esse método: 1) se o x[1] for NA? 2) se o x[n] for NA? 3) se você tiver dois NA's seguidos?
Em 14 de abril de 2016 16:40, Felipe <[email protected]> escreveu: > Prezados, > > Estou precisando calcular a média entre dois valore quando NA, ou seja,, > quando tenho, por exemplo, um NA na posição 10 de um vetor, quero substituir > o NA pela média dos valores das posições 9 e 10, mean(c(x[i-1],x[i+1]). > > Tentei usar ifelse(), mas não funcionou: > > #### > set.seed(9999) > x <- rnorm(500,10,5) > y <- sample(1:500,50,replace=FALSE) > x[y] <- NA > > media <- function(x) > { > for (i in 2:length(x)) > { > x[i] <- ifelse(is.na(x[i]),mean(c(x[i-1],x[i+1])),x[i]) > > } > } > sapply(x, media) > > _______________________________________________ > R-br mailing list > [email protected] > https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br > Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e fornea cdigo > mnimo reproduzvel. -- Rafael Garcia Cunha YNWA
_______________________________________________ R-br mailing list [email protected] https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forne�a c�digo m�nimo reproduz�vel.
