EST212 - Bioestatística - Prova 1 - Gabarito

Orientações

  1. Crie uma pasta com seu nome na área de trabalho.

  2. Altere o diretório de trabalho para a pasta criada.

  3. Crie um novo script e salve na pasta criada com o nome prova_1_est212_Nome_Sobrenome. Por exemplo, meu script seria salvo com o nome prova_1_est212_Anderson_Duarte.

  4. Acesse o Moodle e baixe a base de dados peso_porcos.csv.

  5. Leia a base de dados para o objeto peso_porcos.

  6. Realize todas as análises nesse script. Ao final da prova, salve o script e o envie pelo Moodle na atividade Prova 1.

Detalhes sobre o script

  • O script deverá conter todos os comandos necessários para a realização das análises.

  • Escreva um comentário com o número do exercício antes de iniciar a resolução

  • Antes de cada análise, enuncie as hipóteses como comentário.

  • Após cada análise, escreva a interpretação do resultado como comentário.

  • A seguir um exemplo de script para um exercício:

    #Exercício 1
    
    #H0: O preço médio dos produtos é igual
    #H1: O preço médio dos produtos é diferente
    
    t.test(preco ~ tipo_de_produto, data = peso_porcos)
    
    #Como o p-valor é menor que 0,05, ao nível de 5% de significância, 
    #temos evidências que indicam que o preço médio dos produtos é diferente.

Sobre o banco de dados

Uma granja cria porcos de duas raças para o abate. Os porcos são abatidos a partir de um determinado peso. Após o primeiro ano de criação, eles estão interessados em avaliar algumas hipóteses sobre os animais ali criados. Durante determinado período, os animais foram alimentados com 3 rações diferentes, para avaliar o ganho de peso. Um banco de dados composto por 75 animais teve os seguintes parâmetros avaliados:

  • peso (kg),

  • idade do abate (dias)

  • sexo

  • raça

  • ração.

Exercício 1

Utilize o gráfico adequado para verificar a relação do peso com as demais variáveis (idade, sexo, a raça e ração). Interprete os resultados.

# Leitura dos dados
peso_porcos <- read.csv("peso_porcos.csv", stringsAsFactors = T)

#Exercício 1

# Duas variáveis contínuas - Diagrama de dispersão
plot(peso ~ idade, data = peso_porcos)

## Existe uma correlação positiva entre peso e idade, ou seja, quanto
## mais velho o porco, maior seu peso

#Uma variável contínua e uma discreta - Boxplot

boxplot(peso ~ sexo, data = peso_porcos)

##Aparentemente os pesos de machos e fêmeas são iguais

boxplot(peso ~ racao, data = peso_porcos)

##Visualmente, existem diferenças de peso de acordo com as rações.
## Os porcos tratados com a ração 3 tem maior peso, seguido pelos 
## tratados com a ração 2. Os menores pesos são dos porcos tratados 
## com a ração 1

boxplot(peso ~ raca, data = peso_porcos)

##Os porcos da raça Camborough apresentam peso superior aos da raça Lacombe

Exercício 2

Utilize o teste T adequado para verificar se existem diferenças no peso médio dos porcos por raça e por sexo.

## Primeiramente vamos verificar se a variável peso é normal. 
## Note que, como cada grupo apresenta mais de 30 observações, 
## essa checagem é dispensável.
## H0: a variável peso segue distribuição normal
## H1: a variável peso não segue distribuição normal
shapiro.test(peso_porcos$peso)

    Shapiro-Wilk normality test

data:  peso_porcos$peso
W = 0.96822, p-value = 0.05624
## Ao nível de 5% de significância, podemos afirmar que a variável
## peso segue distribuição normal.

#Precisamos verificar se as variâncias são iguais ou diferentes 
#para escolher o teste t adequado

## Teste 1
## H0: as variâncias do peso por sexo são iguais
## H1: as variâncias do peso por sexo são diferentes


## Teste 2
## H0: as variâncias do peso por raça são iguais
## H1: as variâncias do peso por raça são diferentes

var.test(peso ~ sexo, data = peso_porcos)

    F test to compare two variances

data:  peso by sexo
F = 1.0134, num df = 37, denom df = 36, p-value = 0.9693
alternative hypothesis: true ratio of variances is not equal to 1
95 percent confidence interval:
 0.5234636 1.9561678
sample estimates:
ratio of variances 
          1.013441 
var.test(peso ~ raca, data = peso_porcos)

    F test to compare two variances

data:  peso by raca
F = 1.4287, num df = 37, denom df = 36, p-value = 0.2868
alternative hypothesis: true ratio of variances is not equal to 1
95 percent confidence interval:
 0.7379585 2.7577287
sample estimates:
ratio of variances 
          1.428709 
## Ambas as amostras de peso, separadas por sexo e por raça, apresentam 
## variâncias homogêneas. Vamos usar o teste t para variâncias iguais


# Teste t, peso por sexo.
##H0: O peso médio dos porcos de sexos distintos é igual
##H1: O peso médio dos porcos de sexos distintos é diferente
t.test(peso ~ sexo, data = peso_porcos, var.equal = T)

    Two Sample t-test

data:  peso by sexo
t = 0.3697, df = 73, p-value = 0.7127
alternative hypothesis: true difference in means between group F and group M is not equal to 0
95 percent confidence interval:
 -5.949899  8.660008
sample estimates:
mean in group F mean in group M 
       103.5928        102.2377 
##Ao nível de 5% de significância, podemos afirmar que o peso dos 
## porcos não difere em relação ao sexo.

# Teste t, peso por raça.
##H0: O peso médio dos porcos de raças distintas é igual
##H1: O peso médio dos porcos de raças distintas é diferente
t.test(peso ~ raca, data = peso_porcos, var.equal = T)

    Two Sample t-test

data:  peso by raca
t = 2.4758, df = 73, p-value = 0.01561
alternative hypothesis: true difference in means between group Camborough and group Lacombe is not equal to 0
95 percent confidence interval:
  1.701178 15.746964
sample estimates:
mean in group Camborough    mean in group Lacombe 
               107.22814                 98.50406 
##Ao nível de 5% de significância, podemos afirmar que o peso dos 
## porcos difere em relação à raça. De acordo com as médias por raça, 
## porcos da raça Camborough apresentam maior peso médio

Exercício 3

Calcule a correlação entre as variáveis peso e idade dos porcos e interprete seu resultado.

#Correlaçã entre peso e idade
cor(x = peso_porcos$peso, peso_porcos$idade)
[1] 0.9422225
## A correlação entre peso e idade é 0,942, uma correlação forte e positiva. Ou seja, com o aumento da idade, ocorre o aumento do peso de forma linear.

Exercício 4

Utilize um modelo de regressão linear múltipla para verificar a relação entre o peso (variável resposta) e as variáveis explicativas sexo, raça e idade. Interprete os resultados obtidos.

#Regressão linear entre peso, sexo, raça e idade:
m1 <- lm(peso ~ sexo + raca + idade, data = peso_porcos)
summary(m1)

Call:
lm(formula = peso ~ sexo + raca + idade, data = peso_porcos)

Residuals:
    Min      1Q  Median      3Q     Max 
-3.7335 -0.9778  0.2217  1.0237  3.4901 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)  2.38873    1.44184   1.657    0.102    
sexoM        0.04211    0.39704   0.106    0.916    
racaLacombe -9.96272    0.39686 -25.104   <2e-16 ***
idade        1.40398    0.01863  75.372   <2e-16 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.717 on 71 degrees of freedom
Multiple R-squared:  0.9886,    Adjusted R-squared:  0.9882 
F-statistic:  2060 on 3 and 71 DF,  p-value: < 2.2e-16
##Observa-se que a variável sexo não é significativa. 
## Vamos removê-la do modelo

m2 <- lm(peso ~ raca + idade, data = peso_porcos)
summary(m2)

Call:
lm(formula = peso ~ raca + idade, data = peso_porcos)

Residuals:
    Min      1Q  Median      3Q     Max 
-3.7114 -0.9668  0.2160  1.0031  3.4717 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)  2.41726    1.40677   1.718     0.09 .  
racaLacombe -9.96320    0.39410 -25.281   <2e-16 ***
idade        1.40388    0.01848  75.987   <2e-16 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 1.705 on 72 degrees of freedom
Multiple R-squared:  0.9886,    Adjusted R-squared:  0.9883 
F-statistic:  3132 on 2 and 72 DF,  p-value: < 2.2e-16
## As variáveis raça e idade são significativas para explicar o peso dos animais.
## Animais da raça Lacombe pesam em média 9,96kg a menos que animais da raça camborough
## Para cada aumento de um dia na idade dos porcoes, espera-se um aumento de 1,4kg de peso.
#O R2 ajustado é de 0,9883, ou seja, 98,8% da variabilidade do peso pode ser 
#explicado pelas variáveis raça e idade.

Exercício 5

Utilize a Análise de variância para verificar se existem diferenças significativas no peso médio dos porcos em relação às rações utilizadas. Verifique a validade da ANOVA. Caso haja grupos com médias distintas, identifique quais são as diferenças existentes e interprete os resultados.

#Primeiramente precisamos verificar se as variâncias dos pesos por ração são homogêneas, usando o teste de Levene.

##H0: a variância do peso entre as rações é igual
##H1: a variância do peso entre as rações é diferente

#Carregando o pacote car
library("car")
Warning: pacote 'car' foi compilado no R versão 4.5.2
Carregando pacotes exigidos: carData
Warning: pacote 'carData' foi compilado no R versão 4.5.2
leveneTest(peso ~ racao, data = peso_porcos)
Levene's Test for Homogeneity of Variance (center = median)
      Df F value  Pr(>F)  
group  2  2.5831 0.08253 .
      72                  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## Ao nivel de 5% de significância, podemos afirmar que as variâncias
## do peso dos porcos tratados com rações diferentes é a mesma

## Análise de variância
## QUeremos testar as seguintes hipóteses
## H0: O peso médio dos porcos tratatos com rações diferentes é igual
## H1: O peso médio dos porcos tratados com rações diferentes é diferente
## para pelo menos um tipo de ração
anova <- aov(peso ~ racao, data = peso_porcos)
summary(anova)
            Df Sum Sq Mean Sq F value   Pr(>F)    
racao        2   7828    3914   26.61 2.23e-09 ***
Residuals   72  10592     147                     
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##Antes de interpretar os resultados da ANOVA, precisamos verificar se os 
## resíduos são normais:

## H0: Os resíduos seguem distribuição normal
## H1: Os resíduos não seguem distribuição normal
shapiro.test(anova$residuals)

    Shapiro-Wilk normality test

data:  anova$residuals
W = 0.97437, p-value = 0.1318
## Ao nível de 10% de significância, podemos afirmar que os resíduos são normais.
## Logo, a análise de variância é valida.
## Ao nivel de 5% de significância podemos afirmar que pelo menos uma das
## rações gera um peso médio diferente das demais nos porcos em estudo.

## Testes de comparação múltipla
TukeyHSD(anova)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = peso ~ racao, data = peso_porcos)

$racao
                     diff       lwr      upr     p adj
racao 2-racao 1  5.461281 -2.748416 13.67098 0.2556557
racao 3-racao 1 23.880235 15.670538 32.08993 0.0000000
racao 3-racao 2 18.418955 10.209258 26.62865 0.0000027
plot(TukeyHSD(anova))

## Ao nível de 5% de significância, podemos afirmar que a ração 3 difere 
## das rações 1 e 2. Animais tratados com as rações 1 e 2 tem peso médio
## igual. Já os tratados com a raçã 3 tem peso médio maior.