Semanas = rep(c(2,4,6,8),3)
Temperatura = c(rep(0,4),rep(10,4),rep(20,4))
concentra = c(45,47,46,46,45,43,41,37,34,28,21,16)
cbind(Semanas,Temperatura,concentra)
## Semanas Temperatura concentra
## [1,] 2 0 45
## [2,] 4 0 47
## [3,] 6 0 46
## [4,] 8 0 46
## [5,] 2 10 45
## [6,] 4 10 43
## [7,] 6 10 41
## [8,] 8 10 37
## [9,] 2 20 34
## [10,] 4 20 28
## [11,] 6 20 21
## [12,] 8 20 16
library(gamlss)
ajuste = gamlss(concentra/100 ~ factor(Temperatura):Semanas, family = BE(mu.link = "log"))
## GAMLSS-RS iteration 1: Global Deviance = -38.9135
## GAMLSS-RS iteration 2: Global Deviance = -80.0541
## GAMLSS-RS iteration 3: Global Deviance = -80.6867
## GAMLSS-RS iteration 4: Global Deviance = -80.6867
summary(ajuste)
## ******************************************************************
## Family: c("BE", "Beta")
##
## Call: gamlss(formula = concentra/100 ~ factor(Temperatura):Semanas,
## family = BE(mu.link = "log"))
##
## Fitting method: RS()
##
## ------------------------------------------------------------------
## Mu link function: log
## Mu Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -0.770005 0.015240 -50.526 3.11e-10 ***
## factor(Temperatura)0:Semanas -0.000723 0.003096 -0.234 0.822002
## factor(Temperatura)10:Semanas -0.023630 0.003277 -7.211 0.000176 ***
## factor(Temperatura)20:Semanas -0.132557 0.004384 -30.240 1.12e-08 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## ------------------------------------------------------------------
## Sigma link function: logit
## Sigma Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -4.0069 0.2077 -19.29 2.51e-07 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## ------------------------------------------------------------------
## No. of observations in the fit: 12
## Degrees of Freedom for the fit: 5
## Residual Deg. of Freedom: 7
## at cycle: 4
##
## Global Deviance: -80.68674
## AIC: -70.68674
## SBC: -68.2622
## ******************************************************************
plot(Semanas[Temperatura==10],fitted.values(ajuste)[Temperatura==10], col = "red", xlab = "Semanas",
ylim = c(0.1,0.5), pch = 19, ylab = "Concentração", main = "Observados x preditos", type = "p")
lines(Semanas[Temperatura==10],concentra[Temperatura==10]/100, col = "blue", pch = 19)
points(Semanas[Temperatura==20],fitted.values(ajuste)[Temperatura==20], col = "green", pch = 19)
lines(Semanas[Temperatura==20],concentra[Temperatura==20]/100, col = "orange", pch = 19)
points(Semanas[Temperatura==0],fitted.values(ajuste)[Temperatura==0], col = "brown", pch = 19)
lines(Semanas[Temperatura==0],concentra[Temperatura==0]/100, col = "black", pch = 19)
grid()
text(7,0.49, "Temperatura 0")
text(7,0.35, "Temperatura 10")
text(7,0.21, "Temperatura 20")
plot(ajuste)
## ******************************************************************
## Summary of the Quantile Residuals
## mean = 0.0004788113
## variance = 1.091033
## coef. of skewness = -0.5587208
## coef. of kurtosis = 1.639019
## Filliben correlation coefficient = 0.9185558
## ******************************************************************
Por exigência do pacote rsq o objeto R não pode ser gamlss, nesse caso observando a relação entre média e variância na regressão Beta utilizamos o ajuste com família quasi, nesta somente especificamos a relação entre média e variância. Fizemos isto para obtermos o valor do \(R_V^2\) que, assim como outros coeficientes de correlação, estão programados nesse pacote de funções.
ajuste1 = glm(concentra/100 ~ factor(Temperatura):Semanas, family = quasi(link = "log", variance = "mu(1-mu)"))
summary(ajuste1)
##
## Call:
## glm(formula = concentra/100 ~ factor(Temperatura):Semanas, family = quasi(link = "log",
## variance = "mu(1-mu)"))
##
## Deviance Residuals:
## Min 1Q Median 3Q Max
## -0.031819 -0.007713 0.000978 0.016685 0.017641
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -0.7698793 0.0187136 -41.140 1.34e-10 ***
## factor(Temperatura)0:Semanas -0.0007468 0.0037945 -0.197 0.848874
## factor(Temperatura)10:Semanas -0.0236436 0.0040419 -5.850 0.000383 ***
## factor(Temperatura)20:Semanas -0.1326297 0.0053578 -24.755 7.58e-09 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for quasi family taken to be 0.0004770307)
##
## Null deviance: 0.5587542 on 11 degrees of freedom
## Residual deviance: 0.0038237 on 8 degrees of freedom
## AIC: NA
##
## Number of Fisher Scoring iterations: 3
library(rsq)
rsq.v(ajuste1)
## [1] 0.993234
No material de consulta, seção III.3. Testes de hipóteses e sub-seção Testando Hipóteses Não Lineares explica-se como fazer quando o objetivo é encontrar estimativas de funções de parâmetros da regressão, inclussive explica-se como encontrar intervalos de confiança para essas funções.