[R-br] função de interpolação
Fernando Souza
nandodesouza em gmail.com
Quarta Outubro 1 14:16:09 BRT 2014
Caros amigos
Estou necessitando faze a interpolação de algumas pesagens tomadas em
diferentes animais. Eu preciso da interpolação feita para cada animal
separadamente e o intervalo entre medidas não é fixo. Eu estou
utilizando a função approx() no entanto devido ao número de animais
utilizados fica muito dispendioso fazer fazer esta interpolação uma a
uma. Por isso gostaria de uma função onde um pudesse automatizar este
procedimento.
set.seed(20)
dados<-data.frame(ANIMAL=factor(rep(1:5,each=4)),Peso=rnorm(20,30,4),
data=sample(seq(as.Date("01/04/2009",'%d/%m/%Y'),
as.Date("30/04/2009",'%d/%m/%Y'),length.out=30),20),day=1:20)
Estou tentando fazer uma função que estime os pontos da interpolação
agrupados por Animal . Entretanto tenho pouco conhecimento em
programação para fazer isso. Tenho tentado fazer isso, sem muito sucesso.
Alguém poderia me ajudar? Abraços
aprendendo<-function(dados){
niveis<-levels(dados$ANIMAL)
dia<-diff(dados$data)
for(i in min(niveis):max(niveis)){
b<-
approx(dados[dados$ANIMAL==as.numeric(i),]$Peso,dados[dados$ANIMAL==as.numeric(i),]$data),n=15)
}
return(b)
}
Mais detalhes sobre a lista de discussão R-br