Escolar Documentos
Profissional Documentos
Cultura Documentos
Avaliação3 21555662
Avaliação3 21555662
library(ggplot2)
Análise Exploratória
Cálculos para obter as estimativas dos parâmetros, somas de quadrados, predição e
erros padrões. Na seção seguinte os dados serão analisados com funções do R e será
feita discussão dos resultados.
rm(list = objects())
# Estrutura.
str(refri)
## D -1 1
## A B C
## -1 -1 -1 2 2
## 1 2 2
## 1 -1 2 2
## 1 2 2
## 1 -1 -1 2 2
## 1 2 2
## 1 -1 2 2
## 1 2 2
# Gráfico.
ggplot(data = refri,
mapping = aes(x = A, y = y, color = B)) +
facet_grid(facets = C ~ D) +
geom_point() +
stat_summary(mapping = aes(group = B),
fun = "mean",
geom = "line")
Análise com funções
Análise dos dados. Como é um modelo linear, usa-se a lm().
# Ajuste do modelo saturado.
m0 <- lm(y ~ A * B * C * D, data = refri)
layout(1)
Atráves dos gráficos podemos observar que, não existem evidências contra o
atendimento dos pressupostos. Obviamente que por serem poucas observações,
dificulta-se detectar padrões característicos, como relação média-variância. O que
pode ser comentado é que o fato da variável ser medida em escala discreta (soma de
20 termos com notas de 0 a 10), isso aparece no gráfico com resíduos padronizados de
mesmo valor.
# Quadro de análise de variância.
anova(m0)
## Analysis of Variance Table
##
## Response: y
## Df Sum Sq Mean Sq F value Pr(>F)
## A 1 2312.00 2312.00 241.7778 4.451e-11 ***
## B 1 21.12 21.12 2.2092 0.1566
## C 1 946.13 946.13 98.9412 2.958e-08 ***
## D 1 561.13 561.13 58.6797 9.692e-07 ***
## A:B 1 0.13 0.13 0.0131 0.9104
## A:C 1 3.13 3.13 0.3268 0.5755
## B:C 1 0.50 0.50 0.0523 0.8220
## A:D 1 666.12 666.12 69.6601 3.187e-07 ***
## B:D 1 12.50 12.50 1.3072 0.2697
## C:D 1 12.50 12.50 1.3072 0.2697
## A:B:C 1 4.50 4.50 0.4706 0.5025
## A:B:D 1 2.00 2.00 0.2092 0.6536
## A:C:D 1 0.00 0.00 0.0000 1.0000
## B:C:D 1 0.13 0.13 0.0131 0.9104
## A:B:C:D 1 21.13 21.13 2.2092 0.1566
## Residuals 16 153.00 9.56
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
# Estimativas.
summary(m0)
##
## Call:
## lm(formula = y ~ A * B * C * D, data = refri)
##
## Residuals:
## Min 1Q Median 3Q Max
## -3.5 -2.0 0.0 2.0 3.5
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 1.752e+02 5.467e-01 320.588 < 2e-16 ***
## A 8.500e+00 5.467e-01 15.549 4.45e-11 ***
## B -8.125e-01 5.467e-01 -1.486 0.157
## C 5.438e+00 5.467e-01 9.947 2.96e-08 ***
## D 4.188e+00 5.467e-01 7.660 9.69e-07 ***
## A:B -6.250e-02 5.467e-01 -0.114 0.910
## A:C -3.125e-01 5.467e-01 -0.572 0.575
## B:C -1.250e-01 5.467e-01 -0.229 0.822
## A:D 4.562e+00 5.467e-01 8.346 3.19e-07 ***
## B:D 6.250e-01 5.467e-01 1.143 0.270
## C:D -6.250e-01 5.467e-01 -1.143 0.270
## A:B:C 3.750e-01 5.467e-01 0.686 0.503
## A:B:D -2.500e-01 5.467e-01 -0.457 0.654
## A:C:D 1.305e-14 5.467e-01 0.000 1.000
## B:C:D 6.250e-02 5.467e-01 0.114 0.910
## A:B:C:D -8.125e-01 5.467e-01 -1.486 0.157
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 3.092 on 16 degrees of freedom
## Multiple R-squared: 0.9676, Adjusted R-squared: 0.9371
## F-statistic: 31.81 on 15 and 16 DF, p-value: 4.504e-09
Pela análise de variância podemos dizer que, não houve interações relevantes
envolvendo C (nível de carbonação), apenas o efeito principal. Não houve efeito de B
(xarope/água) em nenhum termo. Houve interação dupla entre A (adoçante) e D
(temperatura). Portanto, alguns termos do modelo podem ser abandonados.
# Ajuste do modelo reduzido apenas nos termos relevantes.
m1 <- update(m0, . ~ C + A * D)
anova(m1)
## Analysis of Variance Table
##
## Response: y
## Df Sum Sq Mean Sq F value Pr(>F)
## C 1 946.13 946.13 110.766 4.688e-11 ***
## A 1 2312.00 2312.00 270.673 1.347e-15 ***
## D 1 561.13 561.13 65.693 1.046e-08 ***
## A:D 1 666.12 666.12 77.985 1.905e-09 ***
## Residuals 27 230.63 8.54
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
# Variâncias residuais.
c(s2_m0 = summary(m0)$sigma^2,
s2_m1 = summary(m1)$sigma^2)
## s2_m0 s2_m1
## 9.562500 8.541667
Percebe-se que o modelo ajustado não diferiu. Neste exemplo, a variância residual do
modelo m1 foi menor que do modelo m0.Então, a diferença nessas estimativas é
irrelevante. Poderia-se usar a estimativa pura da variância residual fornecida pelo
modelo m0. Os resultados não devem mudar substancialmente.
# Malha fina de valores para predição.
pred <- expand.grid(A = seq(-1, 1, by = 0.1),
C = seq(-1, 1, by = 0.5),
D = seq(-1, 1, by = 0.1),
KEEP.OUT.ATTRS = FALSE)
pred <- cbind(pred,
as.data.frame(predict(m1,
newdata = pred,
se.fit = TRUE)[1:2]))
# Gráficos de linhas.
ggplot(data = pred,
mapping = aes(x = A, y = fit, color = D, group = D)) +
facet_wrap(facets = ~C) +
geom_line() +
scale_color_distiller(palette = "PRGn")
Perceba que quanto maior o valor de D (temperatura), mais pronunciado é o efeito
de A (adoçante). Diz-se que existe sinergismo entre esses fatores. O efeito de C
(carbonação) é aditivo aos demais (nas escalas consideradas). Quanto maior C, maior
o valor médio fixando-se os demais fatores.
# Valores preditos em cada ponto experimental.
grid <- unique(refri[, c("A", "C", "D")])
grid$fit <- predict(m1, newdata = grid)
arrange(grid, fit)
## A C D fit
## 1 -1 -1 1 160.9375
## 2 -1 -1 -1 161.6875
## 3 1 -1 -1 169.5625
## 4 -1 1 1 171.8125
## 5 -1 1 -1 172.5625
## 6 1 1 -1 180.4375
## 7 1 -1 1 187.0625
## 8 1 1 1 197.9375