<div dir="ltr">Olá Mauro,<div><br></div><div>no dataset estão as variáveis: Time e y. Time é a variável independente que deve ser convertida em horas da seguinte forma:</div><div><br></div><div><span style="font-size:12.8px">x=Time/60 # para deixar o tempo em horas</span><br></div><div><span style="font-size:12.8px"><br></span></div><div><span style="font-size:12.8px">E y é a variável resposta (gases) e dependente do modelo.</span></div><div><span style="font-size:12.8px"><br></span></div><div><span style="font-size:12.8px">Adriele.</span></div><div><span style="font-size:12.8px"><br></span></div><div><span style="font-size:12.8px"><br></span></div></div><div class="gmail_extra"><br><div class="gmail_quote">Em 26 de outubro de 2015 12:00, <span dir="ltr"><<a href="mailto:r-br-request@listas.c3sl.ufpr.br" target="_blank">r-br-request@listas.c3sl.ufpr.br</a>></span> escreveu:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Enviar submissões para a lista de discussão R-br para<br>
<a href="mailto:r-br@listas.c3sl.ufpr.br">r-br@listas.c3sl.ufpr.br</a><br>
<br>
Para se cadastrar ou descadastrar via WWW, visite o endereço<br>
<a href="https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br" rel="noreferrer" target="_blank">https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br</a><br>
ou, via email, envie uma mensagem com a palavra 'help' no assunto ou<br>
corpo da mensagem para<br>
<a href="mailto:r-br-request@listas.c3sl.ufpr.br">r-br-request@listas.c3sl.ufpr.br</a><br>
<br>
Você poderá entrar em contato com a pessoa que gerencia a lista pelo<br>
endereço<br>
<a href="mailto:r-br-owner@listas.c3sl.ufpr.br">r-br-owner@listas.c3sl.ufpr.br</a><br>
<br>
Quando responder, por favor edite sua linha Assunto assim ela será<br>
mais específica que "Re: Contents of R-br digest..."<br>
<br>
<br>
Tópicos de Hoje:<br>
<br>
1. RES: Ajustes de modelos não-lineares em gases in vitro<br>
(Mauro Sznelwar)<br>
<br>
<br>
----------------------------------------------------------------------<br>
<br>
Message: 1<br>
Date: Sun, 25 Oct 2015 22:29:57 -0200<br>
From: "Mauro Sznelwar" <<a href="mailto:sznelwar@uol.com.br">sznelwar@uol.com.br</a>><br>
To: <<a href="mailto:r-br@listas.c3sl.ufpr.br">r-br@listas.c3sl.ufpr.br</a>><br>
Subject: [R-br] RES: Ajustes de modelos não-lineares em gases in<br>
vitro<br>
Message-ID: <000001d10f85$722d3f50$5687bdf0$@<a href="http://com.br" rel="noreferrer" target="_blank">com.br</a>><br>
Content-Type: text/plain; charset="utf-8"<br>
<br>
Eu tentei rodar e não reconheceu a variável ‘x’, não está no seu data set.<br>
<br>
<br>
<br>
Olá,<br>
<br>
eu gostaria de saber se é possível usar estruturas de correlação nos resíduos quando ajusto modelos não-lineares em mensurações de dados de produção de gases in vitro (caracterizado por mensurações acumuladas ao longo do tempo) e sem repetição.<br>
<br>
<br>
<br>
Breve descrição do banco de dados de gases in vitro: o experimento foi conduzido em frascos de (125 mL) que contem fruído ruminal com feno de alfalfa. Esses frascos são acoplados aos sensores que medem pressão dos gases no interior dos frascos com o conversor digital que registra automaticamente a cada 5 minutos, durante o período de 48 horas. As mensurações dos gases são, portanto acumuladas ao longo do tempo. Tenho quatro compostos (amostras) diferentes que chamei de (y, y2, y3 e y4), em que cada uma amostra contem 577 mensurações ao longo do tempo (x) que é dado em horas.<br>
<br>
<br>
<br>
Eu preciso ajustar modelos não-lineares para cada amostra (exponencial, logístico e logístico bicompartimental). O modelo logístico bicompartimental foi o que melhor se ajustou sem usar estrutruras de correlação, porém, a análise residual possuí uma forte dependência (visto que os dados são acumulados, ou seja, a mensuração no tempo (t+1) depende da mensuração anterior do tempo t.<br>
<br>
Então, eu teria que entrar com estruturas de correlações no modelo logístico bicompartimental para melhorar a análise residual?<br>
<br>
<br>
<br>
Eu tentei algumas estruturas usando o argumento “correlation”, da função gnls. No quadro abaixo segue o seguinte resumo das estruturas inseridas no modelo, com os respectivos resultados gerados pela FAC ou os erros retornados pelo software R.<br>
<br>
<br>
modelo<br>
<br>
correlation<br>
<br>
Erros<br>
<br>
FAC - residual<br>
<br>
<br>
M1<br>
<br>
sem estrutrura de correlação<br>
<br>
Sem erro<br>
<br>
Tendência : possivelmente independência e heterogeneidade<br>
<br>
<br>
M2<br>
<br>
AR1: corAR1()<br>
<br>
Erro: step halving factor reduced below minimum in NLS step<br>
<br>
-<br>
<br>
<br>
M3<br>
<br>
AR1: corAR1(form=~x)<br>
<br>
Sem erro<br>
<br>
Tendência : possivelmente independência e heterogeneidade<br>
<br>
<br>
M4<br>
<br>
AR2: corAR1(p=2, q=0)<br>
<br>
Coefficient matrix not invertible<br>
<br>
-<br>
<br>
<br>
M5<br>
<br>
ARIMA: corARMA(p=2,q=1)<br>
<br>
step halving factor reduced below minimum in NLS step<br>
<br>
-<br>
<br>
<br>
M6<br>
<br>
ARIMA: corARMA(p=2,q=2)<br>
<br>
Coefficient matrix not invertible<br>
<br>
-<br>
<br>
<br>
M7<br>
<br>
ARIMA: corARMA(p=3,q=1)<br>
<br>
Coefficient matrix not invertible<br>
<br>
-<br>
<br>
<br>
M8<br>
<br>
AR(): corAR1(form=~1)<br>
<br>
Erro: step halving factor reduced below minimum in NLS step<br>
<br>
-<br>
<br>
<br>
<br>
Observação: Eu fiz a análise usando a metodologia de séries temporais (modelo linear não estacionário – com uma diferença d=1) e a FAC e FACP mostraram que os resíduos eram ruído branco, como nos modelos ARIMA(p=1, d=1, q=0), ARIMA(p=2, d=1, q=0) e ARIMA(p=3, d=1, q=0). Seria possível ajustar modelos não-lineares (logístico bicompartimental) usando estruturas de correlações como o ARIMA?<br>
<br>
Os dados e o script seguem em anexo com todos os modelos que tentei ajustar (somente para uma amostra, ou seja, correspondente as colunas chamadas de y e x). Agradeço se puderem me dar uma orientação.<br>
<br>
<br>
<br>
<br>
<br>
rm(list=ls(all=TRUE))<br>
<br>
#pacotes necessários para a análise.<br>
<br>
require(manipulate)<br>
<br>
require(nlstools)<br>
<br>
require(car)<br>
<br>
require(nlme)<br>
<br>
require(lmtest)<br>
<br>
# modelos estudados<br>
<br>
#a * (1 - exp(-b * (t - c))) # modelo exponencial<br>
<br>
#a /(1+exp(2+4*b*(c-t))) # modelo logistico<br>
<br>
#a/(1+exp(2+4*b*(c-t)))+d/(1+exp(2+4*e*(c-t))) # modelo logistico 2 pool<br>
<br>
<br>
<br>
#-----------------------------------------------------------------------<br>
<br>
setwd('E:\\autoregressivo_modelo')<br>
<br>
gas01<-read.csv("gas.csv",sep = ",", header = TRUE)<br>
<br>
gas01<br>
<br>
head(gas01)<br>
<br>
attach(gas01)<br>
<br>
t=Time/60 # para deixar o tempo em horas<br>
<br>
dim(gas01)<br>
<br>
<br>
<br>
gas=cbind(gas01,t)<br>
<br>
names(gas) <- c("Time","y","y2","y3", "y4", "x") # variáveis que quero ajustar y (variavel dependente gases) e x o tempo em horas<br>
<br>
head(gas)<br>
<br>
dim(gas)<br>
<br>
attach(gas)<br>
<br>
<br>
<br>
#===================================================================<br>
<br>
<br>
<br>
# Ajuste usando o gnls<br>
<br>
#Ajuste do modelo exponencial -lote I considerando os erros independentes<br>
<br>
mod1 <- gnls(y ~ a/(1+exp(2+4*b*(c-x)))+d/(1+exp(2+4*e*(c-x))),<br>
<br>
data=gas, start=c(a=1.1179, b=0.0562, c=-9.5923, d=0.367, e=0.0226))<br>
<br>
summary(mod1) # quadro de estimativas<br>
<br>
R2(residuals(mod1), gas$y)<br>
<br>
residuosnI<-summary(mod1)$resid<br>
<br>
shapiro.test(residuosnI)<br>
<br>
ks.test(rnorm(577),residuosnI)<br>
<br>
plot(mod1)<br>
<br>
hist(residuosnI)<br>
<br>
<br>
<br>
<br>
<br>
# Ajuste do modelo Logístico 2 pool considerando - AR()<br>
<br>
mod2 <- gnls(y ~ a/(1+exp(2+4*b*(c-x)))+d/(1+exp(2+4*e*(c-x))),<br>
<br>
data=gas,correlation=corAR1(),<br>
<br>
start=c(a=0.78, b=0.06, c=-5.5923, d=0.367, e=0.0226))<br>
<br>
summary(mod2) # quadro de estimativas<br>
<br>
R2(residuals(mod2), gas$y)<br>
<br>
residuosnI<-summary(mod2)$resid<br>
<br>
shapiro.test(residuosnI)<br>
<br>
ks.test(rnorm(577),residuosnI)<br>
<br>
plot(mod2)<br>
<br>
hist(residuosnI)<br>
<br>
plot(x,mod2$residuals)<br>
<br>
plot(mod2)<br>
<br>
# ------------------------------------------------------------------------<br>
<br>
<br>
<br>
<br>
<br>
# Ajuste do modelo Logístico 2 pool considerando - AR()<br>
<br>
mod3 <- gnls(y ~ a/(1+exp(2+4*b*(c-x)))+d/(1+exp(2+4*e*(c-x))),<br>
<br>
data=gas,correlation=corAR1(form=~x),<br>
<br>
start=c(a=0.78, b=0.06, c=-5.5923, d=0.367, e=0.0226))<br>
<br>
summary(mod3) # quadro de estimativas<br>
<br>
R2(residuals(mod3), gas$y)<br>
<br>
residuosnI<-summary(mod3)$resid<br>
<br>
shapiro.test(residuosnI)<br>
<br>
ks.test(rnorm(577),residuosnI)<br>
<br>
plot(mod3)<br>
<br>
hist(residuosnI)<br>
<br>
plot(x,mod3$residuals)<br>
<br>
plot( ACF(mod3, maxLag =24), alpha = 0.05 )<br>
<br>
# ------------------------------------------------------------------------<br>
<br>
<br>
<br>
# Ajuste do modelo Logístico 2 pool considerando - AR2()<br>
<br>
mod4 <- gnls(y ~ a/(1+exp(2+4*b*(c-x)))+d/(1+exp(2+4*e*(c-x))),<br>
<br>
data=gas,correlation=corARMA(p=2,q=0),<br>
<br>
start=c(a=0.78, b=0.06, c=-5.5923, d=0.367, e=0.0226))<br>
<br>
summary(mod4) # quadro de estimativas<br>
<br>
R2(residuals(mod4), gas$y)<br>
<br>
residuosnI<-summary(mod4)$resid<br>
<br>
shapiro.test(residuosnI)<br>
<br>
ks.test(rnorm(577),residuosnI)<br>
<br>
plot(mod4)<br>
<br>
hist(residuosnI)<br>
<br>
plot( ACF(mod4, maxLag =24), alpha = 0.05 )<br>
<br>
# ------------------------------------------------------------------------<br>
<br>
<br>
<br>
# Ajuste do modelo Logístico 2 pool considerando - ARIMA(p=2,q=1)<br>
<br>
mod5 <- gnls(y ~ a/(1+exp(2+4*b*(c-x)))+d/(1+exp(2+4*e*(c-x))),<br>
<br>
data=gas,correlation=corARMA(p=2,q=1),<br>
<br>
start=c(a=1.1179, b=0.0562, c=-9.5923, d=0.367, e=0.0226))<br>
<br>
summary(mod5) # quadro de estimativas<br>
<br>
R2(residuals(mod5), gas$y)<br>
<br>
residuosnI<-summary(mod5)$resid<br>
<br>
shapiro.test(residuosnI)<br>
<br>
ks.test(rnorm(577),residuosnI)<br>
<br>
plot(mod5)<br>
<br>
hist(residuosnI)<br>
<br>
plot( ACF(mod5, maxLag =24), alpha = 0.05 )<br>
<br>
# ------------------------------------------------------------------------<br>
<br>
<br>
<br>
<br>
<br>
# Ajuste do modelo Logístico 2 pool considerando - ARIMA(p=2,q=2)<br>
<br>
mod6 <- gnls(y ~ a/(1+exp(2+4*b*(c-x)))+d/(1+exp(2+4*e*(c-x))),<br>
<br>
data=gas,correlation=corARMA(p=2,q=2),<br>
<br>
start=c(a=1.1179, b=0.0562, c=-9.5923, d=0.367, e=0.0226))<br>
<br>
summary(mod6) # quadro de estimativas<br>
<br>
R2(residuals(mod6), gas$y)<br>
<br>
residuosnI<-summary(mod6)$resid<br>
<br>
shapiro.test(residuosnI)<br>
<br>
ks.test(rnorm(577),residuosnI)<br>
<br>
plot(mod6)<br>
<br>
hist(residuosnI)<br>
<br>
plot( ACF(mod6, maxLag =24), alpha = 0.05 )<br>
<br>
# ------------------------------------------------------------------------<br>
<br>
<br>
<br>
# Ajuste do modelo Logístico 2 pool considerando - ARIMA(p=3,q=1)<br>
<br>
mod7 <- gnls(y ~ a/(1+exp(2+4*b*(c-x)))+d/(1+exp(2+4*e*(c-x))),<br>
<br>
data=gas,correlation=corARMA(p=3,q=1),<br>
<br>
start=c(a=1.1179, b=0.0562, c=-9.5923, d=0.367, e=0.0226))<br>
<br>
summary(mod7) # quadro de estimativas<br>
<br>
R2(residuals(mod7), gas$y)<br>
<br>
residuosnI<-summary(mod7)$resid<br>
<br>
shapiro.test(residuosnI)<br>
<br>
ks.test(rnorm(577),residuosnI)<br>
<br>
plot(mod6)<br>
<br>
hist(residuosnI)<br>
<br>
plot( ACF(mod7, maxLag =24), alpha = 0.05 )<br>
<br>
<br>
<br>
<br>
<br>
Agradeço desde já,<br>
<br>
Adriele.<br>
<br>
<br>
<br>
--<br>
<br>
Adriele Giaretta Biase.<br>
<br>
Mestre em Estatística e Experimentação Agropecuária - UFLA.<br>
Doutoranda em Estatística e Experimentação Agronômica - ESALQ/ USP<br>
<br>
Contato: (19) 8861-0619.<br>
<br>
<br>
<br>
---<br>
Este email foi escaneado pelo Avast antivírus.<br>
<a href="https://www.avast.com/antivirus" rel="noreferrer" target="_blank">https://www.avast.com/antivirus</a><br>
-------------- Próxima Parte ----------<br>
Um anexo em HTML foi limpo...<br>
URL: <<a href="http://listas.inf.ufpr.br/pipermail/r-br/attachments/20151025/d63a5a47/attachment-0001.html" rel="noreferrer" target="_blank">http://listas.inf.ufpr.br/pipermail/r-br/attachments/20151025/d63a5a47/attachment-0001.html</a>><br>
<br>
------------------------------<br>
<br>
Subject: Legenda do Digest<br>
<br>
_______________________________________________<br>
R-br mailing list<br>
<a href="mailto:R-br@listas.c3sl.ufpr.br">R-br@listas.c3sl.ufpr.br</a><br>
<a href="https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br" rel="noreferrer" target="_blank">https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br</a><br>
<br>
<br>
------------------------------<br>
<br>
Fim da Digest R-br, volume 58, assunto 21<br>
*****************************************<br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div style="font-family:times,serif;margin:0cm 0cm 0.0001pt;font-size:16px"><span style="white-space:pre"> </span>Adriele Giaretta Biase.</div><div style="font-family:times,serif;margin:0cm 0cm 0.0001pt;font-size:16px"><span style="white-space:pre"> </span>Mestre em Estatística e Experimentação Agropecuária - UFLA. <br><span style="white-space:pre"> </span>Doutoranda em Estatística e Experimentação Agronômica - ESALQ/ USP</div><div style="font-family:times,serif;margin:0cm 0cm 0.0001pt;font-size:16px"><span style="font-size:12pt;white-space:pre"> </span><span style="font-size:12pt">Contato: (19) 8861-0619.</span></div></div>
</div>