---
title: "Inferência estatística"
subtitle: "Aula 5"
author: "Bruno Montezano"
institute: "Grupo Alliance<br>Programa de Pós-Graduação em Psiquiatria e Ciências do Comportamento<br>Universidade Federal do Rio Grande do Sul"
date: last-modified
date-format: long
lang: pt-br
execute:
  echo: true
format:
  revealjs:
    incremental: true
    smaller: true
    theme: [default, ../assets/custom.scss]
    logo: "../assets/logo_ufrgs.png"
bibliography: references.bib
---

## Conteúdo de hoje

- Introdução
- População e amostra
- Testes de hipótese
  - Hipótese nula e alternativa
  - Interpretação de resultados
- Teste $\chi^2$
- Teste t
- ANOVA de uma via e teste de Tukey
- Correlação

## O que é estatística inferencial?

* Um dos principais objetivos ao fazer pesquisa é *generalizar as descobertas* para
toda a população
  - Amostra $\rightarrow$ População
  
* Um **modelo estatístico** é uma *representação* de um fenômeno complexo que gerou
os dados
  - Por vezes, assume pressupostos sobre as variáveis

* Quando pesquisamos, estamos interessados em testar hipóteses
  - Suposição sobre o estado das coisas
  - Podem ser substantivas (formulação textual ou semântica)
  ou estatísticas (operacionalização da hipótese substantiva)
  
## George Box sobre os modelos estatísticos

<center>
<font size="6">  
*"All models are wrong, but some are useful"* [@box_1976].
</font>
</center>

<br>

![](../assets/george_box_photo.jpg){fig-align="center" width=50%}

## Hipóteses estatísticas

* Hipótese nula ($H_0$): a mais conservadora, advoga pela ausência de padrões ou associações, em geral o pesquisador não acredita

* Hipótese alternativa ($H_a$): apoia relação ou diferença entre as variáveis,
comumente a hipótese que motivou o pesquisador a coletar seus dados

* Em estatística frequentista, os testes testarão a adequação dos dados à
hipótese nula

. . .

$$\underbrace{O \,grupo \,que \,tomou \,antidepressivo \,apresenta \,menos \,sintomas \,depressivos}_\text{Hipótese  substantiva}$$

$$H_0: \mu_{tomou} = \mu_{não \,tomou}$$
$$\underbrace{H_a: \mu_{tomou} < \mu_{não \,tomou}}_\text{Hipóteses estatísticas}$$

## $p$-valor

* O $p$-valor representa a probabilidade de obter um resultado tão extremo
ou mais extremo do que o observado, assumindo que a hipótese nula ($H_0$)
é verdadeira

* Se o $p$-valor for pequeno (geralmente <0,05), há evidências estatísticas
para rejeitar a hipótese nula ($H_0$) em favor da hipótese alternativa ($H_a$)

* O **$p$-valor não mede a magnitude da diferença ou efeito observado**,
apenas indica sua significância estatística 

* Dentro da psiquiatria e da psicologia, **adotamos por convenção o nível
de significância de 0,05**

## Vamos ver alguns testes estatísticos!

![](../assets/meme_hipotese.jpg){fig-align="center" width=75%}

## Teste qui-quadrado de independência

* Usado para verificar se duas variáveis categóricas são independentes 

* Pressupostos:
  - Os dados são aleatórios e representativos da população
  - As variáveis analisadas são categóricas

* Algumas hipóteses de pesquisa a serem respondidas pelo teste $\chi^2$:
  - Verificar se sexo e escolha do curso de graduação são independentes
  - Testar se classe social e reprovação na escola são independentes
  - Avaliar se obesidade e morte por COVID-19 são independentes
  
## Exemplo de teste $\chi^2$ no R

```{r grafico-ilha-especie}
#| echo: false
#| out-width: "90%"
#| fig-align: "center"
library(dados)
library(ggplot2)

ggplot(pinguins,
       aes(x = especie, fill = ilha)) +
  geom_bar(position = "fill") +
  labs(x = "Espécie",
       y = "Proporção",
       fill = "Ilha") +
  ghibli::scale_fill_ghibli_d("PonyoMedium") +
  scale_y_continuous(labels = scales::percent) +
  theme_minimal(base_size = 21,
                base_family = "Charter")
```

::: columns
::: {.column width="50%"}
```{r qui-quadrado-especie-ilha}
library(janitor)

# Criar tabela 3x3 com espécie e ilha
pinguins |> 
  tabyl(especie, ilha)
```
:::

::: {.column width="50%"}
```{r}
# Rodar um teste qui-quadrado de independência
chisq.test(pinguins$especie, pinguins$ilha)
```
:::
:::

## $V$ de Cramer

* Os $p$-valores quase nunca são informativos sobre a relevância dos resultados

* O **tamanho do efeito** é uma medida objetiva e padronizada sobre um efeito
observado

* O tamanho do efeito mais utilizado no teste $\chi^2$ é
o $V$ de Cramer
  - Esta estatística gera valores entre 0 e 1
  - A interpretação se baseia nos graus de liberdade

. . .

::: columns
::: {.column width="50%"}
| Graus de liberdade | Pequeno | Médio | Grande |
|--------------------|---------|-------|--------|
| 1                  | 0,1     | 0,3   | 0,5    |
| 2                  | 0,07    | 0,21  | 0,35   |
| 3                  | 0,06    | 0,17  | 0,29   |
| 4                  | 0,05    | 0,15  | 0,25   |
:::

::: {.column width="50%"}
```{r v-de-cramer-pinguins}
library(effectsize)

cramers_v(pinguins$especie,
          pinguins$ilha,
          alternative = "two.sided",
          ci = 0.95)
```
:::

:::
  

## Teste t

* Frequentemente usado para testar hipóteses sobre diferenças entre até duas médias

* Pressupostos:
  - Dados aleatórios e representativos da população
  - Variável dependente contínua
  - Resíduos do modelo são normalmente distribuídos
  
* Exemplos de uso do teste t:
  - Verificar se o peso médio dos bebês da maternidade do HCPA é similar ao
  esperado na população
  - Verificar se as notas do ENEM diferem em estudantes da rede pública e privada
  de ensino
  - Verificar se o uso de uma medicação diminuiu os sintomas ansiosos dos pacientes
  psiquiátricos após um mês
  
## Exemplo de teste t de duas amostras

Vamos supor que queremos verificar se há diferença na massa corporal dos pinguins
machos e fêmeas nos dados `pinguins` do pacote `dados`.

$$
H_0: \mu_{machos} - \mu_{fêmeas} = 0
$$

$$
H_a: \mu_{machos} - \mu_{fêmeas} \ne 0
$$

$$
\alpha = 0,05
$$

```{r histograma-massa-sexo}
#| echo: false
#| out-width: 100%
#| fig-align: "center"
library(dplyr)
pinguins |>
  filter(!is.na(sexo)) |>
  group_by(sexo) |> 
  mutate(sexo = if_else(sexo == "macho", "Macho", "Fêmea"),
         media_massa = mean(massa_corporal)) |>
  ggplot(
    aes(
      x = massa_corporal,
      fill = sexo
    )) +
      geom_histogram(alpha = 0.65) +
      labs(x = "Massa corporal",
           y = "# de pinguins",
           fill = "Sexo") +
      ghibli::scale_fill_ghibli_d("YesterdayMedium", -1) +
      theme_minimal(base_size = 16,
                    base_family = "Charter") +
      geom_vline(aes(xintercept = media_massa, color = sexo), size = 2,
                 show.legend = FALSE) +
      ghibli::scale_colour_ghibli_d("YesterdayMedium", -1)
```


## Teste t no R

```{r teste-t-massa-pinguins}
pinguins |>
  filter(!is.na(sexo)) |>
  group_by(sexo) |>
  summarise(
    media_massa = mean(massa_corporal, na.rm = TRUE),
    dp_massa = sd(massa_corporal, na.rm = TRUE)
  )

t.test(formula = massa_corporal ~ sexo,
       data = pinguins,
       paired = FALSE,
       conf.level = 0.95)
```

## $d$ de Cohen

* O tamanho do efeito pode ser considerado um indicador da
relevância clínica dos grupos

* O $d$ de Cohen é usado para calcular a distância entre as médias das
distribuições sobrepostas

. . .

::: columns
::: {.column width="50%"}
| $d$ de Cohen | Interpretação |
|--------------|-------------|
| $d < 0,2$    | Irrelevante |
| $d \ge 0,2$  |   Pequeno   |
| $d \ge 0,5$  |   Moderado  |
| $d \ge 0,8$  |    Grande   |
:::

::: {.column width="50%"}
```{r d-cohen-pinguins}
cohens_d(
  massa_corporal ~ sexo,
  data = pinguins,
  pooled_sd = FALSE,
  paired = FALSE,
  ci = 0.95
)
```
:::

:::

## ANOVA de uma via

* A ANOVA (análise da variância) representa um conjunto de procedimentos para verificar
diferenças médias entre vários grupos
  - Basicamente um super teste t
  - Também pode ser entendido como um caso especial de um modelo de regressão
  - Uma das análises mais usadas em Psicologia [@chartier_2008]
  
* Possíveis perguntas de pesquisa:
  - Qual é a diferença de três medicamentos diferentes na redução dos sintomas
  de depressão em pacientes diagnosticados com transtorno depressivo maior?
  - Há diferenças significativas nas medidas de ansiedade entre grupos de
  diferentes faixas etárias?
  - Existe uma diferença nos níveis de estresse percebido entre pessoas
  que vivem em diferentes países?
  
## Exemplo de ANOVA no R

Vamos novamente verificar a diferença na massa corporal, porém agora
entre as ilhas do Arquipélago Palmer.


::: columns
::: {.column width="40%"}
```{r bar-plot-ilha-massa}
#| out-width: 100%
#| fig-align: "center"
#| echo: false
pinguins |>
  ggplot(aes(x = ilha,
             y = massa_corporal,
             fill = ilha)) +
  geom_boxplot() +
  labs(y = "Massa corporal",
       x = "Ilha") +
  ghibli::scale_fill_ghibli_d(name = "MononokeLight") +
  scale_y_continuous(labels = \(x) paste0(as.character(x), "g")) +
  theme_minimal(base_size = 24,
                base_family = "Charter") +
  theme(legend.position = "none")
```

Visualmente, parece que os pinguins da `ilha` Biscoe apresentam uma média maior
de `massa_corporal` em relação às outras ilhas.
:::

::: {.column width="60%"}
```{r anova-uma-via-ilha-massa}
anova_massa_ilha <- aov(massa_corporal ~ ilha,
                        data = pinguins)

summary(anova_massa_ilha)

TukeyHSD(anova_massa_ilha)
```

:::

:::

## Correlação

* Procedimento usado para verificar relação entre duas variáveis

* Qual coeficiente escolher? Dica de leitura: @khamis_2008

. . .

| Nível de medida | Correlação |
|--------------|-------------|
| Variáveis são normais |   Produto momento de Pearson   |
| Variáveis não são normais  |   $\rho$ de Spearman ou $\tau$ de Kendall  |

* Na psicometria, correlações tetracóricas ou policóricas são muito comuns

* Como interpretar?
  - Varia de -1 a 1
  
. . .
  
| Valor | Sinal positivo (+) | Sinal negativo (-) |
|-------|--------------------|--------------------|
| 0,1   | Fraca positiva     | Fraca negativa     |
| 0,3   | Moderada positiva  | Moderada negativa  |
| 0,5   | Forte positiva     | Forte negativa     |

## Propriedades da correlação de Pearson

1. Limitado entre -1 e 1, com 0 sendo a ausência de correlação
2. O sinal indica a natureza, e o número, a força
3. A correlação de uma variável com ela mesma é 1
4. É simétrica, ou seja, $r(x, y) = r(y, x)$
5. Adimensional e invariante em transformações lineares
6. Sensível aos *outliers*
7. Não indica causalidade

## Exemplo de correlação em R

::: columns
::: {.column width="50%"}
```{r dispersao-massa-comprimento-bico}
#| echo: false
#| out-width: 100%
#| fig-align: "center"
pinguins |> 
  ggplot(aes(x = massa_corporal,
             y = comprimento_bico)) +
  geom_point(color = "#00468b99",
             alpha = 0.7,
             size = 2) +
  labs(x = "Massa corporal (em gramas)",
       y = "Comprimento do bico (em mm)") +
  theme_minimal(base_size = 21,
                base_family = "Charter")
```

:::

::: {.column width="50%"}
```{r correlacao-massa-comprimento-bico}
cor.test(pinguins$massa_corporal,
         pinguins$comprimento_bico,
         method = "pearson",
         conf.level = 0.95)
```

:::

:::

. . .

Parece que nós temos uma correlação forte e positiva entre massa corporal e
comprimento do bico nos pinguins (*r* = 0,59; *p*<0,001).

. . .

Dica de um site divertido: [Guess the Correlation](https://www.guessthecorrelation.com/)

## Alternativas não-paramétricas

* Eventualmente, quando os pressupostos do modelo são violados, a literatura tradicional
indica o uso de testes não-paramétricos com propostas semelhantes

* Outros autores sugerem que sempre testes não-paramétricos sejam usados em resultados
obtidos por processo de avaliação psicológica, com argumento de que os dados têm
nível de medida ordinal

. . .

| Teste paramétrico        | Teste não-paramétrico   |   Função no R    |
|--------------------------|-------------------------|------------------|
| Teste t de duas amostras | Teste U de Mann-Whitney | `wilcox.test()`  |
| ANOVA de uma via         | Teste de Kruskal-Wallis | `kruskal.test()` |

## Referências

::: {#refs}
:::

## Tarefa de casa

A partir da base dos `pinguins` do pacote `dados`:

1. Calcule a correlação produto momento de Pearson entre o comprimento
do bico e a profundidade do bico dos pinguins. Crie um gráfico de pontos
(dispersão) com `ggplot2` para acompanhar sua análise exploratória.

2. Rode um teste t para verificar a diferença na média do comprimento da
nadadeira entre os pinguins macho e fêmea. Usando as funções `group_by()` e
`summarise()` do pacote `dplyr`, faça um resumo da média e da mediana dos
comprimentos das nadadeiras estratificando pelos grupos.
    - Lembre-se que a base `pinguins` possui onze valores ausentes (`NA`) na coluna
  do `sexo`.

3. Crie um modelo de ANOVA de uma via para verificar se há diferenças na massa
corporal dos pinguins baseado em sua espécie. Caso sim, rode um teste de Tukey
para analisar quais grupos diferenciam entre si.