
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) }