Este é um documento produzido com R Markdown para fins pedagógicos com a turma de Métodos quantitativos aplicados à Administração, turma 2021.2 da EAUFBA.
Markdown é uma síntaxe para autoria de documentos em diversos formatos. Para mais detalhes veja http://rmarkdown.rstudio.com.
Para criar um novo documento, basta ir em File -> New File -> RMarkdown
O script alterna áreas de código (code chunk) e áreas de texto
Para inserir um code chunk, use Ctrl+Alt+l
Quando você clica em Knit um documento é gerado incluindo todos os conteúdos
Fontes primárias do RMarkdown https://bookdown.org/yihui/rmarkdown/installation.html e https://bookdown.org/yihui/rmarkdown-cookbook/
As demais fontes são o próprio R e os pacotes utilizados
# Para citar pacotes, basta adicionar o nome do pacote nos parênteses
# com aspas
citation()
##
## To cite R in publications use:
##
## R Core Team (2021). R: A language and environment for statistical
## computing. R Foundation for Statistical Computing, Vienna, Austria.
## URL https://www.R-project.org/.
##
## A BibTeX entry for LaTeX users is
##
## @Manual{,
## title = {R: A Language and Environment for Statistical Computing},
## author = {{R Core Team}},
## organization = {R Foundation for Statistical Computing},
## address = {Vienna, Austria},
## year = {2021},
## url = {https://www.R-project.org/},
## }
##
## We have invested a lot of time and effort in creating R, please cite it
## when using it for data analysis. See also 'citation("pkgname")' for
## citing R packages.
o arg. echo = FALSE é adicionado a um chunk para prevenir que o código seja impresso no arquivo de saída.
# Média real = 40
# I.C padrão é de 95%
t.test(lotes, mu=40)
##
## One Sample t-test
##
## data: lotes
## t = -1.1026, df = 24, p-value = 0.2811
## alternative hypothesis: true mean is not equal to 40
## 95 percent confidence interval:
## 32.5334 42.2666
## sample estimates:
## mean of x
## 37.4
A significância da diferença entre os lotes encomendados pela rede varejista vs. O valor previsto estimado para o período foi avaliada através de um teste t-Student para uma amostra. Conta com 25 observações.
As hipóteses testadas foram:
Hipótese nula: a média do número de encomendas é igual ao número de encomendas previsto e igual a 40.
Hipótese alternativa: a média do número de encomendas é diferente do número de encomendas previsto e igual a 40.
Com o auxílio do R e R-Studio para executar os testes estatísticos, considerou-se que não há diferença significativa entre a média da amostra e a média hipotética prevista para o estudo, cujo valor-p foi superior a 0,05.
A média do número de encomendas foi de 37,4. A média prevista de encomendas foi de 40. De acordo com os resultados do teste t-Student apresentado, as diferenças observadas entre a média da amostra e o valor previsto não são estatisticamente significativas (t (24) = -1,10; p = 0,281). A dimensão da diferença foi de 2,36 lotes encomendados. Sendo assim, a rede varejista pode continuar utilizando 40 como a média de lotes a serem encomendados.
#resultados descritivos
tabela <- group_by(fatores, Fator_clientes)
descritivo <- summarise(tabela,
Media = mean(Clientes, na.rm=TRUE),
sd = sd(Clientes, na.rm=TRUE),
Mediana = median(Clientes),
CV = sd/Media,
Assimetria = skew(Clientes),
Curtose = kurtosi(Clientes))
descritivo %>%
kbl() %>%
kable_styling()
| Fator_clientes | Media | sd | Mediana | CV | Assimetria | Curtose |
|---|---|---|---|---|---|---|
| Emocional | 7.552500 | 1.1356261 | 7.73 | 0.1503643 | -0.2566082 | -0.7648432 |
| Cognitivo | 8.452857 | 0.8423541 | 8.42 | 0.0996532 | 0.1501955 | -1.4512193 |
#Com amostras pareadas, basta adicionar o arg. paired=T
leveneTest(Clientes ~ Fator_clientes, data = fatores)
## Levene's Test for Homogeneity of Variance (center = median)
## Df F value Pr(>F)
## group 1 0.405 0.5297
## 28
t.test(Clientes ~ Fator_clientes, data = fatores)
##
## Welch Two Sample t-test
##
## data: Clientes by Fator_clientes
## t = -2.4849, df = 27.328, p-value = 0.01937
## alternative hypothesis: true difference in means between group Emocional and group Cognitivo is not equal to 0
## 95 percent confidence interval:
## -1.6433881 -0.1573262
## sample estimates:
## mean in group Emocional mean in group Cognitivo
## 7.552500 8.452857
A significância da diferença entre a avaliação em notas de 1 a 10 para as abordagens de atendimento Cognitivo vs. atendimento Emocional foi avaliada através de um teste t-Student para amostras independentes. Conta com uma amostra de 30 clientes.
As hipóteses testadas foram:
Hipótese nula: as notas de atendimento não diferem entre os grupos de abordagens Cognitivo e Emocional.
Hipótese alternativa: as notas de atendimento diferem significativamente entre os grupos de abordagens Cognitivo e Emocional.
Os pressupostos desse método estatístico, nomeadamente as normalidades das distribuições e a homogeneidade de variâncias nos dois grupos foram avaliados, respectivamente, com a avaliação de assimetria e curtose e com o teste de Levene. Os valores de assimetria e curtose se mantiveram abaixo de 3 em módulo, demonstrando robustez quanto a violação do pressuposto de normalidade. O teste de Levene, baseado na mediana, obteve (F = 0,40 e p = 0,52), indicando que são assumidas as variâncias iguais entre os grupos. Com o auxílio do R e R-Studio para executar os testes estatísticos, considerou-se que há diferenças significativas entre as médias dos grupos, cujo valor-p do teste foi inferior a 0,05.
Os clientes que receberam o atendimento com abordagem cognitiva avaliaram em média com nota = 8,45, em uma escala de 0 a 10. Os clientes que receberam a abordagem emocional no atendimento, avaliaram em média = 7,55. De acordo com os resultados do teste t-Student apresentado, as diferenças observadas entre as abordagens de atendimento são estatisticamente significativas (t (28) = -2,48; p = 0,019).
A dimensão da diferença foi de 0,9 e de acordo com o intervalo de confiança a 95% (0,15; 1,64) os clientes que recebem atendimento com abordagem cognitiva tendem a dar notas maiores de 0,15 a 1,64 pontos a mais do que os clientes que recebem um atendimento com abordagem emocional.
# variável resposta Y = Tempo
# Variável explicativa X = Maternidade
#resultados descritivos
tabela <- group_by(mater, Maternidade)
descritivo <- summarise(tabela,
Media = mean(Tempo, na.rm=TRUE),
sd = sd(Tempo, na.rm=TRUE),
Mediana = median(Tempo),
CV = sd/Media,
Assimetria = skew(Tempo),
Curtose = kurtosi(Tempo))
descritivo %>%
kbl() %>%
kable_styling()
| Maternidade | Media | sd | Mediana | CV | Assimetria | Curtose |
|---|---|---|---|---|---|---|
| Alf.Costa | 5.4 | 1.837873 | 5.0 | 0.3403469 | 0.1430429 | -0.2623234 |
| Amad.Sintra | 5.7 | 1.567021 | 5.5 | 0.2749160 | 0.4459566 | -0.0881561 |
| Stefania | 7.4 | 1.776388 | 7.5 | 0.2400525 | -0.6550718 | -1.0594386 |
#Gráfico para comparar as médias entre os grupos
grupos <- group_by(mater, Maternidade)
plot.data <- summarise(grupos,
Media = mean(Tempo, na.rm=TRUE),
sd = sd(Tempo, na.rm=TRUE),
n = n(),
se=sd/sqrt(n),
ci = qt(0.975, df=n-1)*se)
ggplot(plot.data, aes(x=Maternidade, y=Media, group = factor(1))) +
geom_line() +
geom_point() +
geom_errorbar(aes(ymin=Media-ci, ymax=Media+ci), width=.1) +
ggtitle("Gráfico de médias de Tempo por Maternidade")
leveneTest(Tempo ~ Maternidade, data = mater)
## Levene's Test for Homogeneity of Variance (center = median)
## Df F value Pr(>F)
## group 2 0.1707 0.844
## 27
# 1° forma com lm
modelo.anova <- lm(Tempo ~ Maternidade, data = mater)
anova(modelo.anova)
## Analysis of Variance Table
##
## Response: Tempo
## Df Sum Sq Mean Sq F value Pr(>F)
## Maternidade 2 23.267 11.6333 3.8826 0.03296 *
## Residuals 27 80.900 2.9963
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
# 2° forma com aov
modelo.anova2 <- aov(Tempo ~ Maternidade, data=mater)
#Calculando médias e erro padrão
medias <- with(mater, tapply(Tempo, Maternidade,mean))
erro <- with(mater, tapply(Tempo, Maternidade, function(x) sqrt(var(x)/length(x))))
medias
## Alf.Costa Amad.Sintra Stefania
## 5.4 5.7 7.4
erro
## Alf.Costa Amad.Sintra Stefania
## 0.5811865 0.4955356 0.5617433
# Teste de Tukey
TukeyHSD(modelo.anova2)
## Tukey multiple comparisons of means
## 95% family-wise confidence level
##
## Fit: aov(formula = Tempo ~ Maternidade, data = mater)
##
## $Maternidade
## diff lwr upr p adj
## Amad.Sintra-Alf.Costa 0.3 -1.61936279 2.219363 0.9207923
## Stefania-Alf.Costa 2.0 0.08063721 3.919363 0.0398591
## Stefania-Amad.Sintra 1.7 -0.21936279 3.619363 0.0900096
#Contrastes
c1 <- c(1,-2,1)
c2 <- c(1,1,-2)
cont <- cbind(c1,c2)
#tendo mais contrastes, basta junta-los com cbind
contrasts(mater$Maternidade) <- cont
modelo.anova2 <- aov(Tempo ~ Maternidade, data=mater)
summary.aov(modelo.anova2, split=list(Maternidade=list("Centro x Interior"=1, "Alf.Costa+Amad.Sintra x Stefania"=2)))
## Df Sum Sq Mean Sq F value
## Maternidade 2 23.27 11.633 3.883
## Maternidade: Centro x Interior 1 3.27 3.267 1.090
## Maternidade: Alf.Costa+Amad.Sintra x Stefania 1 20.00 20.000 6.675
## Residuals 27 80.90 2.996
## Pr(>F)
## Maternidade 0.0330 *
## Maternidade: Centro x Interior 0.3057
## Maternidade: Alf.Costa+Amad.Sintra x Stefania 0.0155 *
## Residuals
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
#gráficos do modelo ANOVA
plot(modelo.anova)
Para avaliar se a maternidade influencia no tempo que os bebês demoram para pegar no sono, recorreu-se a uma ANOVA one-way seguida de um teste post-hoc de Tukey. Adicionalmente, foi realizado um contraste buscando verificar as diferenças de médias entre as maternidades do centro (Alf. Costa e Stefânia) e a maternidade do subúrbio (Amad. Sintra). O estudo conta com 30 observações.
As hipóteses do estudo são:
Hipótese nula: as médias do tempo que os bebês demoram para adormecer são iguais entre as maternidades.
Hipótese alternativa: as médias do tempo que os bebês demoram para adormecer são diferentes em pelo menos um par de maternidades.
Os pressupostos desse método estatístico, nomeadamente as normalidades das distribuições e a homogeneidade de variâncias nos três grupos foram avaliados, respectivamente, com a avaliação de assimetria e curtose e com o teste de Levene. Os valores de assimetria se mantiveram abaixo de 3 em módulo, demonstrando robustez quanto a violação do pressuposto de normalidade.
O teste de Levene, baseado na mediana, obteve (F = 0,17 e p = 0,83), indicando que são assumidas as variâncias iguais entre os grupos. Com o auxílio do R e Rstudio para executar os testes estatísticos, considerou-se que há diferenças significativas entre as médias dos grupos, cujo valor-p do teste foi inferior a 0,05.
Sobre o tempo que os bebês demoram para adormecer, a maternidade Alf. Costa (média = 5,40; sd = 1,84; n = 10) apresentou os menores tempos, seguida da Amad. Sintra (média = 5,70; sd = 1,57; n = 10) e pela Stefânia (média = 7,40; sd = 1,78; n = 10). O teste ANOVA indicou que em pelo menos um par de maternidades, há diferença entre grupos (F = 3,88, p = 0,033).
Ao avaliar o teste de Tukey, foi obtida uma significância abaixo de 0,05 na relação entre Stefânia e Alt. Costa (Diferença de média = 2; p = 0,04). Com um intervalo de confiança a 95% (0,08; 3,92), a diferença de médias pode variar de 0,08 até 3,92 minutos a mais na maternidade Stefânia, quando comparada a Alf. Costa.
Na análise de contraste, a hipótese nula não pôde ser rejeitada (F = 1,09; p = 0,306), indicando que não há evidências de que há diferenças nos tempos entre as maternidades do centro e do subúrbio. É sugerido para os pesquisadores que busquem isolar outras variáveis para compreender os motivos que levam a maternidade Stefânia a ter tempos maiores, haja visto que não influência entre maternidades de centro e de subúrbio.
Gráfico de resíduos O gráfico (Residual vs. Fitted) mostra indícios sobre o comportamento da variância dos resíduos com relação aos valores ajustados, sendo ideal para analisar a presença de não-linearidades no modelo. Nesse caso, nosso modelo é linear.
Gráficos dos resíduos padronizados O gráfico Q-Q dos resíduos padronizados, é usado para verificação da normalidade dos resíduos. No nosso caso, tomamos como hipótese nula a normalidade dos resíduos.
Gráfico de scale location
O gráfico (Scale-Location) serve para indicar a distribuição de pontos no intervalo de valores previstos. A variação deve ser razoavelmente igual em todo o intervalo do preditor.
Gráfico constante de leverage
O gráfico (constante de Leverage) pode ser útil para detectar a presença de pontos influenciantes. No nosso caso, não temos presença de infuenciadores, umas vez que a linha vermelha, a qual indica essa presença, tem como valor de resíduo igual a zero.