Prezados Membros,

    Gostaria de fazer um loop (999 vezes) para ajustar dois modelos nls (Diameter ~ a1 * Age^a2) à partir de um subset em função da minha variável Feature, porém a cada vez que realiza o loop eu gostaria de reciclar os start values através da modificação em coef(mod_ND[[i]])[1] e  coef(mod_ND[[i]])[2]. A condição para o loop parar é quando a iteração for igual a 1 para os dois modelos (  if (mod_ND[[z,c(finIter")]] <= 1){ break } ## ). Bom, mas infelizmente não esta funcionando não, alguma ideia? Segue CRM:

#Pacote
library(minpack.lm)

# Meu banco de dados onde tenho o Diameter das plantas em função de Feature e Age.
Feature<-sort(rep(c("A","B"),22))
Age<-c(60,72,88,96,27,
36,48,60,72,88,96,27,36,48,60,72,
88,96,27,36,48,60,27,27,36,48,60,
72,88,96,27,36,48,60,72,88,96,27,
36,48,60,72,88,96)
Diameter<-c(13.9,16.2,
19.1,19.3,4.7,6.7,9.6,11.2,13.1,15.3,
15.4,5.4,7,9.9,11.7,13.4,16.1,16.2,
5.9,8.3,12.3,14.5,2.3,5.2,6.2,8.6,9.3,
11.3,15.1,15.5,5,7,7.9,8.4,10.5,14,14,
4.1,4.9,6,6.7,7.7,8,8.2)
d<-dados <- data.frame(Feature,Age,Diameter)
str(d)

#Realizando os ajustes

e1<- Diameter ~ a1 * Age^a2
Fecture_vec<-unique(d$Feature)
mod_ND <- list() #List para salvar cada modelo
for(i in 1:length(Fecture_vec)){
     d2 <- subset(d, d$Feature == Fecture_vec[i])
     mod_ND[[i]] <-  nlsLM(e1, data = d2,
     start = list(a1 = 0.1, a2 = 10),
     control = nls.control(maxiter = 1000))
Xs<-data.frame()
for(z in 1:999){
     d2 <- subset(d, d$Feature == Fecture_vec[i])
     mod_ND[[z]] <-  nlsLM(e1, data = d2,
     start = list(a1 = coef(mod_ND[[i]])[1], a2 = mod_ND[[i]])[2]),
     control = nls.control(maxiter = 1000))
   if (mod_ND[[z,c(finIter")]] <= 1){ break } ## Só para quando iteração = 1
print(summary(mod_ND[[z]]))
}
}
#

Obrigado



--
======================================================================
Alexandre dos Santos
Proteção Florestal
IFMT - Instituto Federal de Educação, Ciência e Tecnologia de Mato Grosso
Campus Cáceres
Caixa Postal 244
Avenida dos Ramires, s/n
Bairro: Distrito Industrial
Cáceres - MT                      CEP: 78.200-000
Fone: (+55) 65 99686-6970 (VIVO) (+55) 65 3221-2674 (FIXO)
e-mails:alexandresanto...@yahoo.com.br
        alexandre.san...@cas.ifmt.edu.br
Lattes: http://lattes.cnpq.br/1360403201088680
OrcID: orcid.org/0000-0001-8232-6722   -   ResearcherID: A-5790-2016
Researchgate: www.researchgate.net/profile/Alexandre_Santos10
LinkedIn: br.linkedin.com/in/alexandre-dos-santos-87961635
Mendeley:www.mendeley.com/profiles/alexandre-dos-santos6/
======================================================================

_______________________________________________
R-br mailing list
R-br@listas.c3sl.ufpr.br
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.

Responder a