predict com minpack.lm

Pessoal mais uma vez na procura de ajuda... Estou utilizando o pacote minpack.lm para ajustar uma equação muito grande que com o nls não consegui fazer, agora estou querendo ver os valores ajustados pelo modelo, alguém pode ajudar... segue o CMR o qual estou trabalhando luz=c(0,25,50,75,100,500,1000,1500,2000) Pn=c(-0.60375, 0.04300,0.27000,0.90175,1.39225,2.70350,4.93100,4.31000, 3.80075) ps<-list(a=1,b=1) model1=function(ps,xx){(((0.01940*xx+ps$a+0.60375)-(((0.01940*xx+ps$a+0.60375)^2)-4*0.01940*xx*ps$b*(ps$a+0.60375))^0.5)/2*ps$b)-0.60375} resid1=function(observed,ps,xx){observed-model1(ps,xx)} lin1=nls.lm(ps,resid1,observed=Pn, xx=PAR) summary(lin1) predict???? Agradeço desde já! -- Bach. Agr.Gilson Sánchez Chia, MSc. Laboratório de Fisiologia Vegetal Embrapa Amazônia Ocidental Fone: (92) 3303-7841 http://lattes.cnpq.br/3684553005529634 --- Antes de imprimir, pense na sua responsabilidade com o Meio Ambiente. Please consider the environment before printing this email. Renew, Reduce and Recycle. The Planet Knows.*** Salva un Árbol.* * *** * PIENSA**** EN EL MUNDO PARA TUS HIJOS** *

Gilson, Se você tem os valores das covariáveis, as estimativas dos parâmetros e o modelo, é só fazer a conta que você tem os valores preditos. Crie uma função mypredit() para isso, i.e. cov <- cbind(x=1:10, z=runif(10)) betas <- c(A=10.1, B=2.2) model <- function(beta, covs){ betas["A"]*covs["x"]/(beta["B"]+covs["x"])+beta["B"]*covs["z"] } preditos <- apply(cov, 1, model, beta=betas) À disposição. Walmes. ========================================================================== Walmes Marques Zeviani LEG (Laboratório de Estatística e Geoinformação, 25.450418 S, 49.231759 W) Departamento de Estatística - Universidade Federal do Paraná fone: (+55) 41 3361 3573 VoIP: (3361 3600) 1053 1173 e-mail: walmes@ufpr.br twitter: @walmeszeviani homepage: http://www.leg.ufpr.br/~walmes linux user number: 531218 ==========================================================================

Você pode fazer como está no help da função, veja: require(minpack.lm) luz=c(0,25,50,75,100,500,1000,1500,2000) Pn=c(-0.60375, 0.04300,0.27000,0.90175,1.39225,2.70350,4.93100,4.31000, 3.80075) ps<-list(a=1,b=1) model1=function(ps,xx){(((0.01940*xx+ps$a+0.60375)-(((0.01940*xx+ps$a+0.60375)^2)-4*0.01940*xx*ps$b*(ps$a+0.60375))^0.5)/2*ps$b)-0.60375} resid1=function(observed,ps,xx){observed-model1(ps,xx)} lin1=nls.lm(ps,resid1,observed=Pn, xx=luz) summary(lin1) preditos <- model1(as.list(coef(lin1)), luz) plot(luz, Pn) points(luz, preditos, col = 2) At Gustavo Marcatti Eng. Florestal - UFV ________________________________ De: Walmes Zeviani <walmeszeviani@gmail.com> Para: r-br@listas.c3sl.ufpr.br Enviadas: Quinta-feira, 26 de Janeiro de 2012 12:16 Assunto: Re: [R-br] predict com minpack.lm Gilson, Se você tem os valores das covariáveis, as estimativas dos parâmetros e o modelo, é só fazer a conta que você tem os valores preditos. Crie uma função mypredit() para isso, i.e. cov <- cbind(x=1:10, z=runif(10)) betas <- c(A=10.1, B=2.2) model <- function(beta, covs){ betas["A"]*covs["x"]/(beta["B"]+covs["x"])+beta["B"]*covs["z"] } preditos <- apply(cov, 1, model, beta=betas) À disposição. Walmes. ========================================================================== Walmes Marques Zeviani LEG (Laboratório de Estatística e Geoinformação, 25.450418 S, 49.231759 W) Departamento de Estatística - Universidade Federal do Paraná fone: (+55) 41 3361 3573 VoIP: (3361 3600) 1053 1173 e-mail: walmes@ufpr.br twitter: @walmeszeviani homepage: http://www.leg.ufpr.br/~walmes linux user number: 531218 ========================================================================== _______________________________________________ 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 forneça código mínimo reproduzível.
participantes (3)
-
Gilson Sanchez
-
Gustavo Marcatti
-
Walmes Zeviani