1. A resistência a tração de um determinado tipo de cimento está sendo analisada. Quatro técnicas de mistura possuem viabilidade econômica para serem utilizadas. Os seguintes dados foram coletados:
Definindo o diretório de trabalho:
setwd("E:\\Mestrado IFMG\\Disciplinas\\Analise de Dados\\Atividades\\Exames\\Exame 2")
(a) Teste a hipótese de que as técnicas de mistura afetam a resistência a tração. Use alfa = 5%.
Hipótese:
Ho: As técnicas de mistura utilizadas apresentam médias de resistência iguais.
H1: Pelo menos duas tecnicas de mistura utilizadas apresentam médias de resistência diferentes.
Habilitando os pacotes necessários:
library (agricolae)
library (ggplot2)
library (asbio)
## Loading required package: tcltk
Importando os dados com a função read.table():
dados <- read.table("tabela1.txt", h=TRUE)
Verificando os dados:
str(dados)
## 'data.frame': 16 obs. of 2 variables:
## $ mistura : Factor w/ 4 levels "M1","M2","M3",..: 1 1 1 1 2 2 2 2 3 3 ...
## $ resistencia: int 3129 3000 2865 2890 3200 3300 2975 3150 2800 2900 ...
dados
## mistura resistencia
## 1 M1 3129
## 2 M1 3000
## 3 M1 2865
## 4 M1 2890
## 5 M2 3200
## 6 M2 3300
## 7 M2 2975
## 8 M2 3150
## 9 M3 2800
## 10 M3 2900
## 11 M3 2985
## 12 M3 3050
## 13 M4 2600
## 14 M4 2700
## 15 M4 2600
## 16 M4 2765
Informações importantes:
summary(dados)
## mistura resistencia
## M1:4 Min. :2600
## M2:4 1st Qu.:2791
## M3:4 Median :2938
## M4:4 Mean :2932
## 3rd Qu.:3070
## Max. :3300
Análise Gráfica dos Dados:
boxplot(resistencia ~ mistura, data = dados, col = "lightgray")
Estimação do Modelo Linear:
mod1 <- aov(resistencia ~ mistura , data = dados)
Exibindo a tabela ANOVA:
summary(mod1)
## Df Sum Sq Mean Sq F value Pr(>F)
## mistura 3 489740 163247 12.73 0.000489 ***
## Residuals 12 153908 12826
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Conclusões:
(b) Use o teste da diferença mínima significativa de Fisher com correção de bonferroni para fazer comparações entre os pares de médias.
Teste de Fisher:
test1 = LSD.test (mod1, "mistura", p.adj="bon" , console=TRUE)
##
## Study: mod1 ~ "mistura"
##
## LSD t Test for resistencia
## P value adjustment method: bonferroni
##
## Mean Square Error: 12825.69
##
## mistura, means and individual ( 95 %) CI
##
## resistencia std r LCL UCL Min Max
## M1 2971.00 120.55704 4 2847.624 3094.376 2865 3129
## M2 3156.25 135.97641 4 3032.874 3279.626 2975 3300
## M3 2933.75 108.27242 4 2810.374 3057.126 2800 3050
## M4 2666.25 80.97067 4 2542.874 2789.626 2600 2765
##
## alpha: 0.05 ; Df Error: 12
## Critical Value of t: 3.152681
##
## Least Significant Difference 252.4675
## Means with the same letter are not significantly different.
##
## Groups, Treatments and means
## a M2 3156
## a M1 2971
## a M3 2934
## b M4 2666
bar.group(test1$groups, ylim=c(0,3500))
Conclusões:
No teste de Fisher, médias que possuem a mesma letra são estatisticamente iguais.
Dessa forma, pode-se concluir que as médias de resistência do cimento à tração nas técnicas de mistura 1, 2 e 3 são semelhantes, ou seja, estatisticamente iguais.
(c) Construa um gráfico quantil-quantil dos resíduos do modelo, quais as conclusões sobre a validade da hipótese de normalidade?
Verificação da Normalidade:
plot(mod1, which = 2)
Conclusões:
Através da análise do gráfico Normal Q-Q, pode-se observar uma distribuição homogênea dos pontos em relação à reta. Dessa forma, pode-se inferir que os resíduos do modelo seguem uma distribuição normal.
Tal característica é importante, uma vez que o quadrado médio do resíduo é uma medida usada para diversos cálculos estatísticos conclusivos.
(d) Faça um gráfico dos resíduos contra os valores previstos pelo modelo e comente o resultado.
Verificação de variâncias Homogêneas:
plot(mod1, which = 1)
Conclusões:
Através da análise do gráfico Residuals vs Fitted, pode-se observar que a média dos resíduos tem valores que oscilam muito pouco em relação ao zero. Isso demonstra que os resíduos apresentaram variância homogênea.
Dessa forma, pode-se considerar um bom ajuste do modelo, já que o comportamento observado no gráfico segue um padrão apenas de aleatoriedade.
(e) Relate as conclusões finais do experimento.
A análise estatística dos dados nos permite inferir que:
Baseado no Teste de Hipótese e no Teste de Fisher, as técnicas de mistura 1, 2 e 3 são estatisticamente iguais;
Já a técnica de mistura 4, apresentou valores de resistência do cimento à tração estatisticamente menores do que as demais técnicas.
Segundo o enunciado da questão, as quatro técnicas de mistura possuem viabilidade econômica para serem utilizadas. Entretanto, se o objetivo for obter uma mistura de cimento com maior resistência à tração, indica-se a escolha de uma das técnica de mistura: 1, 2, ou 3.
2. Um fabricante de ligas de alumínio produz refinadores de grãos em forma de lingote. A empresa produz usando em quatro fornos. Cada forno é conhecido por ter características operacionais únicas, portanto, qualquer experimento executado na fundição que envolva mais de um forno, irá considerá-los como um fator de perturbação. Os engenheiros responsáveis pelo processo de produção suspeitam que a velocidade de agitação afeta o tamanho de grão do produto. Cada forno pode ser executado em quatro taxas de agitação diferentes. Um delineamento em blocos aleatorizados foi para um refinador particular e o tamanho do grão resultante é exibido no quadro abaixo:
Habilitando os pacotes necessários:
library (agricolae)
library (ggplot2)
library (asbio)
Importando os dados com a função read.table():
dados <- read.table("tabela2.txt", h=TRUE)
Verificando os dados:
str(dados)
## 'data.frame': 16 obs. of 3 variables:
## $ rpm : Factor w/ 4 levels "R10","R15","R20",..: 4 4 4 4 1 1 1 1 2 2 ...
## $ forno: Factor w/ 4 levels "F1","F2","F3",..: 1 2 3 4 1 2 3 4 1 2 ...
## $ y : int 8 4 5 6 14 5 6 9 14 6 ...
dados
## rpm forno y
## 1 R5 F1 8
## 2 R5 F2 4
## 3 R5 F3 5
## 4 R5 F4 6
## 5 R10 F1 14
## 6 R10 F2 5
## 7 R10 F3 6
## 8 R10 F4 9
## 9 R15 F1 14
## 10 R15 F2 6
## 11 R15 F3 9
## 12 R15 F4 2
## 13 R20 F1 17
## 14 R20 F2 9
## 15 R20 F3 3
## 16 R20 F4 6
Informações importantes:
summary(dados)
## rpm forno y
## R10:4 F1:4 Min. : 2.000
## R15:4 F2:4 1st Qu.: 5.000
## R20:4 F3:4 Median : 6.000
## R5 :4 F4:4 Mean : 7.688
## 3rd Qu.: 9.000
## Max. :17.000
Análise Gráfica dos dados:
ggplot (dados, aes (x=rpm, y=y, fill=rpm)) + geom_boxplot()
ggplot (dados, aes (x=forno, y=y, fill=forno)) + geom_boxplot()
Conclusões:
A partir dos boxplot y x rpm já dá para se perceber que a rotação de 5 rpm produz um produto com grãos menores.
Já através do boxplot y x forno pode-se inferir que o produto resultante do forno 1 possui grãos maiores do que os demais.
No entanto, o que os próximos testes estatísticos permitem é definir se isso aconteceu ao acaso ou não.
Verificando Interação entre Blocos e Níveis do Fator:
interaction.plot (dados$rpm, dados$forno, dados$y, fixed=T, pch = 19, type = "b", xlab= "RPM", ylab= "Média - Tamanho dos grãos")
O ideal seria que essas linhas não se cruzassem, uma vez que um fator não deve interferir na média de outro fator.
Observa-se no gráfico que as linhas representativas dos fornos F2, F3 e F4 se cruzam, o que é um forte indício de que haja interação entre os fatores.
Teste de Aditividade de Tukey:
Ho : Não há efeito interação.
H1: Há efeito de interação.
tukey.add.test (dados$y, dados$rpm, dados$forno)
##
## Tukey's one df test for additivity
## F = 2.9804177 Denom df = 8 p-value = 0.1225519
Visto que o valor p é maior que o nível de significância de 0.05, não se deve rejeitar a hipótese nula.
Sendo assim, confirma-se que - apesar das linhas representativas de F2, F3 E F4 se cruzarem no gráfico anterior - não há efeito de interação entre os fatores.
(a) Há alguma evidência de que as taxas de agitação afetam o tamanho do grão?
Estimação do Modelo com blocagem dos fornos:
Nesse caso, isola-se fonte de perturbação, no caso “forno”.
dados.aov <- aov(y ~ rpm + forno, data = dados)
Exibindo a tabela ANOVA:
summary(dados.aov)
## Df Sum Sq Mean Sq F value Pr(>F)
## rpm 3 22.19 7.40 0.853 0.4995
## forno 3 165.19 55.06 6.348 0.0133 *
## Residuals 9 78.06 8.67
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Conclusões:
Essa análise permite separar a variabilidade devida de cada fator.
Em relação à velocidade de agitação (rpm), o valor p é maior do que o nível de significância (0.05), consequentemente não se deve rejeitar a hipótese nula.
Dessa forma, não há evidências estatísticas de que as taxas de agitação afetem o tamanho dos grãos.
(b) Faça os gráficos apropriados e execute testes para verificar a normalidade e homogeneidade de variância dos resíduos. Comente os resultados.
Verificação da Normalidade:
plot(dados.aov, which = 2)
Teste de Shapiro-Wilks:
Ho: os dados apresentam distribuição aproximadamente normal.
H1: Os dados não apresentam distribuição aproximadamente normal.
shapiro.test (dados.aov$residuals)
##
## Shapiro-Wilk normality test
##
## data: dados.aov$residuals
## W = 0.9301, p-value = 0.2447
Através da análise do gráfico Normal Q-Q, pode-se observar uma distribuição homogênea da maioria dos pontos em relação à linha reta. Os três pontos discrepantes não comprometem o padrão de distribuição dos dados.Dessa forma, pode-se inferir que os resíduos do modelo seguem uma distribuição normal.
O teste de Shapiro-Wilks confirma a normalidade dos dados, uma vez que o valor p obtido no teste é maior que o nível de significância de 0.05. Dessa forma, a hipótese nula não deve ser rejeitada.
Verificação de homogeneidade das variâncias:
plot(dados.aov, which = 1)
Teste de Bartlett:
Ho: Variâncias dos resíduos são homogêneas.
H1: Variâncias dos resíduos não são homogêneas.
#bartlett.test(y ~ interaction(rpm, forno) , data = dados )
##Error in bartlett.test.default
Através da análise do gráfico Residuals vs Fitted, pode-se observar que os pontos têm uma distribuição aleatória em torno do zero. Nota-se a presença de alguns pontos mais discrepantes, porém quase sempre compensados por outros que acabam mantendo a linha menos afastada do ponto zero. Tal comportamento sugere um bom ajuste do modelo.
O teste de Bartlett apresentou erro, visto que deveriam haver ao menos duas observações (repetições) em cada grupo para que pudesse ser aplicado e excutado corretamente.
(c) O que os engenheiros deveriam recomendar em relação a escolha da taxa de agitação e do forno para este refinador de grão em particular, se deseja-se um pequeno tamanho para o grão produzido?
Teste de Tukey - Agricolae
HSD.test(dados.aov, "rpm", group = TRUE, console = TRUE)
##
## Study: dados.aov ~ "rpm"
##
## HSD Test for y
##
## Mean Square Error: 8.673611
##
## rpm, means
##
## y std r Min Max
## R10 8.50 4.041452 4 5 14
## R15 7.75 5.057997 4 2 14
## R20 8.75 6.020797 4 3 17
## R5 5.75 1.707825 4 4 8
##
## alpha: 0.05 ; Df Error: 9
## Critical Value of Studentized Range: 4.41489
##
## Honestly Significant Difference: 6.501145
##
## Means with the same letter are not significantly different.
##
## Groups, Treatments and means
## a R20 8.75
## a R10 8.5
## a R15 7.75
## a R5 5.75
Conclusões:
A análise estatística realizada demonstra que não há interação entre a taxa de agitação e o forno empregado para fabricação de refinadores de grãos.
O teste de Tukey nos permite inferir que não há diferença significativa entre as médias relativas às velocidades de agitação (todas são classificadas com a mesma letra). No entanto, se o objetivo for a obtenção de grãos de tamanho reduzido, deve-se priorizar a utilização de uma taxa de agitação de 5rpm, conforme já comentado na interpretação do boxplot y x rpm.
Em relação à escolha do forno, o boxplot y x forno demonstrou que o produto resultante do forno 1 possui grãos maiores do que os demais. Dessa forma, para se obter um pequeno tamanho de grãos produzidos, o ideal seria a utilização dos fornos F2, F3 ou F4.
Sendo assim, os engenheiros poderiam recomendar o uso de um dos fornos F1, F2 ou F3, sob uma taxa de agitação de 5rpm, o que permitiria a obtenção de grãos de menor tamanho.
3. Um engenheiro está tentando otimizar a produção de um processo químico. Ele avaliou que as duas variáveis mais importantes foram a temperatura e a pressão do processo. Três níveis de cada fator foram selecionados e um experimento fatorial com duas repetições foi executado. Os dados foram os seguintes:
(a) Analise os dados do experimento e tire as conclusões apropriadas. Use alfa = 5%.
Habilitando os pacotes necessários:
library (agricolae)
library (ggplot2)
library (effects)
library (car)
##
## Attaching package: 'car'
##
## The following object is masked from 'package:effects':
##
## Prestige
Importando os dados com a função read.table():
dados <- read.table("tabela3.txt", h=TRUE)
Verificando os dados:
str(dados)
## 'data.frame': 18 obs. of 3 variables:
## $ y : num 90.4 90.2 90.7 90.6 90.2 90.4 90.1 90.3 90.5 90.6 ...
## $ temp: int 150 150 150 150 150 150 160 160 160 160 ...
## $ pres: int 200 200 215 215 230 230 200 200 215 215 ...
dados
## y temp pres
## 1 90.4 150 200
## 2 90.2 150 200
## 3 90.7 150 215
## 4 90.6 150 215
## 5 90.2 150 230
## 6 90.4 150 230
## 7 90.1 160 200
## 8 90.3 160 200
## 9 90.5 160 215
## 10 90.6 160 215
## 11 89.9 160 230
## 12 90.1 160 230
## 13 90.5 170 200
## 14 90.7 170 200
## 15 90.8 170 215
## 16 90.9 170 215
## 17 90.4 170 230
## 18 90.1 170 230
Informações importantes:
summary(dados)
## y temp pres
## Min. :89.90 Min. :150 Min. :200
## 1st Qu.:90.20 1st Qu.:150 1st Qu.:200
## Median :90.40 Median :160 Median :215
## Mean :90.41 Mean :160 Mean :215
## 3rd Qu.:90.60 3rd Qu.:170 3rd Qu.:230
## Max. :90.90 Max. :170 Max. :230
Convertendo temperatura e pressão para fatores:
dados$temp <- as.factor (dados$temp)
dados$pres <- as.factor (dados$pres)
str (dados)
## 'data.frame': 18 obs. of 3 variables:
## $ y : num 90.4 90.2 90.7 90.6 90.2 90.4 90.1 90.3 90.5 90.6 ...
## $ temp: Factor w/ 3 levels "150","160","170": 1 1 1 1 1 1 2 2 2 2 ...
## $ pres: Factor w/ 3 levels "200","215","230": 1 1 2 2 3 3 1 1 2 2 ...
Análise gráfica dos dados:
interaction.plot (dados$pres, dados$temp, dados$y, type="b", pch =19, fixed=T, xlab= "Pressão (psig)", ylab= "y")
O ideal seria que essas linhas não se cruzassem, uma vez que um fator não deve interferir na média de outro fator.
Observa-se no gráfico que as linhas representativas das temperaturas de 150 e 170 se cruzam em um ponto, o que pode ser considerado indício de que haja interação entre os dois fatores.
Estimação do modelo:
dados.aov <- aov(y ~ temp*pres, data = dados)
Exibindo a tabela ANOVA:
Ho: Não há diferença entre as médias.
summary(dados.aov)
## Df Sum Sq Mean Sq F value Pr(>F)
## temp 2 0.3011 0.1506 8.469 0.008539 **
## pres 2 0.7678 0.3839 21.594 0.000367 ***
## temp:pres 4 0.0689 0.0172 0.969 0.470006
## Residuals 9 0.1600 0.0178
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Conclusões:
Essa análise permite separar a variabilidade devida de cada fator. Neste caso, se avaliarmos cada fator isoladamente, nota-se que as médias encontradas não são iguais.
Em relação à temperatura, o valor p é menor do que o nível de significância (0.05), consequentemente rejeita- se a hipótese nula. Portanto, existe diferença entre as médias dos valores encontrados nos três níveis de temperatura.
O mesmo ocorre em relação à pressão. O valor p obtido é menor do que o nível de significância (0.05), portanto a hipótese nula deve ser rejeitada. Ou seja, as médias obtidas nas pressões testadas também são diferentes.
Entretanto, analisando-se a interação entre os dois fatores (temperatura e pressão) percebe-se que o valor p é maior que o nível de significância (0.05). Isso indica que não há evidências estatísticas de que haja interação significativa entre eles.
(b) Analise os resíduos do modelo ajustado e comente sobre a adequação do modelo.
Verificação da Normalidade:
plot(dados.aov, which = 2)
Teste de Shapiro-Wilks:
Ho: os dados apresentam distribuição aproximadamente normal.
H1: Os dados não apresentam distribuição aproximadamente normal.
shapiro.test (dados.aov$residuals)
##
## Shapiro-Wilk normality test
##
## data: dados.aov$residuals
## W = 0.87366, p-value = 0.02046
Através da análise do gráfico Normal Q-Q, pode-se observar uma distribuição não homogênea da maioria dos pontos em relação à linha reta. Dessa forma, há forte indícios de que os resíduos do modelo não seguem uma distribuição normal.
O teste de Shapiro-Wilks confirma o observado no gráfico, uma vez que o valor p obtido no teste é menor que o nível de significância de 0.05. Sendo assim, a hipótese nula deve ser rejeitada.
Verificação de homogeneidade das variâncias:
plot(dados.aov, which = 1)
Teste de Fligner-Killeen:
Ho: Variância dos resíduos é homogênea.
H1: Variância dos resíduos não é homogênea.
fligner.test (y ~ interaction (temp, pres), data = dados)
##
## Fligner-Killeen test of homogeneity of variances
##
## data: y by interaction(temp, pres)
## Fligner-Killeen:med chi-squared = 14.869, df = 8, p-value =
## 0.06174
Através da análise do gráfico Residuals vs Fitted, pode-se observar que os pontos flutuam aleatoriamente em torno do zero, sem viés. Tal comportamento sugere um bom ajuste do modelo.
O teste de Fligner-Killeen resultou em um valor p maior dos que o nível de significância (0.05), o que implica em não rejeitar a hipótese nula. Tal fato corrobora como a conclusão obtida pela análise gráfica, de que a variância dos resíduos é homogênea.
Conclusão:
Para que o ajuste do modelo seja considerado bom, os resíduos devem seguir uma distribuição normal, independentes, com média aproximadamente zero e variância entre os gupos semelhantes.
Uma vez que os resíduos do modelo não segue uma distribuição normal e a dimensão amostral é inferior a 30, o ideal seria a utilização de testes não paramétricos para adequação do modelo.
(c) Sob quais condições dos fatores analisados o engenheiro deveria recomendar a operação do processo?
Gráficos dos Efeitos R base:
plot.design ( y ~ temp*pres , data = dados)
Gráfico dos Efeitos Pacote effects:
plot (allEffects (dados.aov))
inter <- with (dados , interaction (temp, pres))
amod <- aov (y ~ inter, data=dados)
HSD.test (amod, "inter" , group = TRUE, console = TRUE)
##
## Study: amod ~ "inter"
##
## HSD Test for y
##
## Mean Square Error: 0.01777778
##
## inter, means
##
## y std r Min Max
## 150.200 90.30 0.14142136 2 90.2 90.4
## 150.215 90.65 0.07071068 2 90.6 90.7
## 150.230 90.30 0.14142136 2 90.2 90.4
## 160.200 90.20 0.14142136 2 90.1 90.3
## 160.215 90.55 0.07071068 2 90.5 90.6
## 160.230 90.00 0.14142136 2 89.9 90.1
## 170.200 90.60 0.14142136 2 90.5 90.7
## 170.215 90.85 0.07071068 2 90.8 90.9
## 170.230 90.25 0.21213203 2 90.1 90.4
##
## alpha: 0.05 ; Df Error: 9
## Critical Value of Studentized Range: 5.594712
##
## Honestly Significant Difference: 0.5274745
##
## Means with the same letter are not significantly different.
##
## Groups, Treatments and means
## a 170.215 90.85
## ab 150.215 90.65
## ab 170.200 90.6
## ab 160.215 90.55
## bc 150.200 90.3
## bc 150.230 90.3
## bc 170.230 90.25
## bc 160.200 90.2
## c 160.230 90
Conclusões:
Os testes estatísticos demonstram que não há diferenças estatisticamente significativas entre as médias.
A diferença honestamente significativa também é pequena.
Dessa forma, o engenheiro poderia recomendar a operação do processo químico em quais quer das combinações possíveis para as temperaturas e pressões avaliadas. Entretanto, como o objetivo do experimento seria otimizar a produção a combinação da diferentes temperaturas testadas (em especial 170ºC) com pressão de 215psig permitiriam uma melhor eficiência do processo químico.