Como reportar resultados estatísticos

Author

Ronaldo Lima Jr.


© 2026 Simbiose do Amanhã Consultoria Ltda., todos os direitos reservados

1 Introdução

Este material está relacionado ao terceiro R da Jornada \(R^3\), o refinar. Depois de refletir sobre a sua análise e rodá-la no R, chega a parte de reportar os resultados. Para cada resultado, seja de estatística descritiva, testes estatísticos ou modelos de regressão, o pesquisador pode se valer de tabelas, gráficos, e descrição textual. Portanto, a seguir apresento um exemplo de como reportar resultados com esses três elementos, seguindo a ordem de estatística descritiva, testes estatísticos e modelos de regressão. Este material é disponibilizado em arquivo que possibilita facilmente copiar os modelos de texto e adaptar para o seus próprios dados e sua própria análise.

Primeiramente serão apresentados os códigos utilizados no R para gerar as tabelas, os gráficos e as análises em uma caixa de fundo cinza claro, que não devem ir para o texto (dissertação, tese, artigo), estão aqui apenas para que você saiba como foram gerados.


# Exemplo de bloco de códigos no R
 

Após os códigos, há uma seção com os resultados, mostrando as tabelas propriamente ditas, os gráficos e um texto que vem de exemplo para como reportar resultados, em uma caixa azul como esta seguir.

NoteComo reportar os resultados textualmente

Aqui virá o texto de como explicar os resultados.

Você pode copiar o modelo de texto para adaptar aos seus resultados, mas tenha em mente que há diversas maneiras de redigir esse texto, sendo a ideia principal que você guie seu leitor na interpretação das tabelas e gráficos e chame a atenção para o que importa.

Apesar de apresentar os códigos para garantir reprodutibilidade das análises, este material não tem o objetivo de ser um guia, manual ou tutorial de análise quantitativa de dados, mas um guia de como reportar os resultados. Pressupõe-se, portanto, que o usuário deste material tem o conhecimento necessário sobre como conduzir as análises, utilizando este material como orientação para reportar os resultados.

2 Regras gerais

Seguem algumas observações que se aplicam a praticamente todos os resultados.

2.1 Valor de p

Quando o valor de p é igual ou maior a \(0,001\), colocamos o símbolo de igual e o valor de p até a terceira casa decimal, por exemplo \(p = 0,068\). Quando ele é menor que 0,001, colocamos apenas \(p < 0,001\), sem colocar o valor exato.

2.2 Casas decimais

Para não não deixar de reportar detalhes necessários e nem trazer uma falsa impressão de precisão com casas decimais a mais, a sugestão é seguir essas recomendações da APA (American Psychology Association) sobre a quantidade de casas decimais a serem reportadas:

  • Valores acima de 100: nenhuma casa decimal
  • Valores entre 10 e 100: uma casa decimal
  • Valores entre 0,1 e 10: duas casas decimais
  • Valores entre 0,001 e 0,1: três casas decimais
  • Valores menores que 0,001: tantas casas decimais até chegar em um valor de que não seja zero (ou usar a mesma notação para valores de p acima, com < 0,001).

2.3 Pontos e vírgulas para separar decimais

O R separa decimais com pontos, mas ao escrevermos em português é importante usar vírgulas para separar os decimais, principalmente ao longo do texto.

3 Estatística Descritiva: tendência central e dispersão

Exemplo de como reportar médias, medianas e desvios-padrão, com os dados mtcars.

3.1 Códigos

3.1.1 Tabela

# Carregar pacotes
library(tidyverse)
library(flextable) # para gerar tabelas

# Carregar dados
data(mtcars)

# Mudar os rótulos de câmbio
mtcars = mtcars |> 
  mutate(cambio = ifelse(am == 0, "automático", "manual"))

# Dados descritivos
mtcars %>%
  group_by(cambio) %>%
  summarise(média = round(mean(mpg), 1),
            mediana = median(mpg),
            DP = round(sd(mpg), 1),
            n = n()) |> 
  flextable()

3.1.2 Gráfico

ggplot(mtcars, aes(x = cambio, y = mpg)) +
  geom_boxplot(fill = "lightblue") +
  geom_jitter(alpha = 0.3, width = 0.1) +
  labs(y = "Milhas por galão", x = "Tipo de câmbio") +
  theme_minimal()

3.2 Resultados

cambio

média

mediana

DP

n

automático

17.1

17.3

3.8

19

manual

24.4

22.8

6.2

13

NoteMedidas de tendência central e dispersão

Carros com transmissão manual apresentaram, em média, um consumo de 24,4 mpg (DP = 6,17; mediana = 22,8), enquanto os de transmissão automática apresentaram uma média de 17,2 mpg (DP = 3,83; mediana = 17,3). A diferença nas médias e medianas sugere que carros manuais tendem a ser mais econômicos, embora o grupo manual apresente maior dispersão.

4 Teste t

Exemplo com os dados mtcars.

4.1 Códigos

4.1.1 Gráfico

# Carregar pacotes
library(tidyverse)

# Carregar dados
data(mtcars)

# gráfico
ggplot(mtcars, aes(x = am, y = mpg)) +
  geom_boxplot(fill = "lightblue") +
  geom_jitter(alpha = 0.3, width = 0.1) +
  labs(y = "Milhas por galão", x = "Tipo de câmbio") +
  theme_minimal()

4.1.2 Teste t

# Alterar rótulos da variável "câmbio"
mtcars = mtcars |> 
  mutate(cambio = ifelse(am == 0, "automático", "manual"))

# Teste t
t.test(data = mtcars, mpg ~ cambio)

    Welch Two Sample t-test

data:  mpg by cambio
t = -3.7671, df = 18.332, p-value = 0.001374
alternative hypothesis: true difference in means between group automático and group manual is not equal to 0
95 percent confidence interval:
 -11.280194  -3.209684
sample estimates:
mean in group automático     mean in group manual 
                17.14737                 24.39231 

4.2 Resultados

NoteTeste t

Realizou-se um teste t de Welch para comparar a autonomia entre carros com câmbio automático e manual. Houve diferença significativa entre os grupos (\(t(18,3) = -3,77; p = 0,001\)), sendo a média de autonomia dos carros automáticos de 17,2 milhas por galão (\(DP = 3,83\)) e dos manuais de 24,39 (\(DP = 6,17\)), com intervalo de 95% de confiança para a diferença de médias entre 3,21 e 11,28.

Ao longo do parágrado o resultado do teste t deve aparecer como t(graus de liberdade) = valor de t; valor de p. Note que, neste exemplo, colocamos \(p = 0,001\) porque de fato ele é igual a 0,001. Quando o valor de p é igual ou maior a 0,001, colocamos o símbolo de igual e o valor de p até a terceira casa decimal. Quando ele é menor que 0,001, colocamos apenas \(p < 0,001\), sem colocar o valor exato.

O ideal é que testes estatísticos sejam reportados juntamente com seus tamanhos de efeito. No caso deste exemplo, ficaria assim:

NoteTeste t completo

O teste t de Welch indicou uma diferença significativa entre os grupos (\(t(18,3) = -3,8; p = 0,001\)), com uma diferença média estimada de 7,25 mpg (\(IC95\% [17,15; 24,39]\)).

O tamanho de efeito foi grande, com d de Cohen = 1,41 (\(IC95\% [0,53; 2,26]\)), indicando uma diferença substancial no consumo entre os tipos de câmbio.

5 ANOVA

Exemplo com os dados PlantGrowth. Lembre-se que quando uma ANOVA com efeito significativo é reportada, é preciso reportar também os resultados dos testes pareados post-hoc.

5.1 Códigos

5.1.1 Tabela

# Carregar pacotes
library(tidyverse)
library(flextable) # para gerar tabelas

# Carregar dados
data(PlantGrowth)

# Mudar os rótulos dos grupos
PlantGrowth$grupo <- factor(PlantGrowth$group, 
                    labels = c("Controle", 
                               "Tratamento 1",
                               "Tratamento 2"))

# Dados descritivos
PlantGrowth %>%
  group_by(grupo) %>%
  summarise(média = round(mean(weight), 2),
            mediana = round(median(weight), 2),
            DP = round(sd(weight), 2),
            n = n()) |> 
  flextable()

5.1.2 Gráfico

ggplot(PlantGrowth, aes(x = grupo, y = weight)) +
  geom_boxplot(fill = "lightblue") +
  geom_jitter(alpha = 0.3, width = 0.1) +
  labs(y = "Peso", x = "Grupo") +
  theme_minimal()

5.1.3 ANOVA

anova_plants <- aov(weight ~ grupo, 
                    data = PlantGrowth)
summary(anova_plants)
            Df Sum Sq Mean Sq F value Pr(>F)  
grupo        2  3.766  1.8832   4.846 0.0159 *
Residuals   27 10.492  0.3886                 
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

5.2 Resultados

grupo

média

mediana

DP

n

Controle

5.03

5.15

0.58

10

Tratamento 1

4.66

4.55

0.79

10

Tratamento 2

5.53

5.44

0.44

10

NoteANOVA

O peso médio foi maior no grupo tratado 2 (\(m = 5,53; dp = 0,44\)), seguido pelo grupo controle (\(m = 5,03; dp = 0,58\)), e com o menor peso presente no grupo tratado 1 (\(m = 4,66; dp = 0,79\)). A análise de variância (ANOVA) indicou diferença estatisticamente significativa (\(F(2) = 4,85; p = 0,016\)).

Ao longo do parágrado o resultado da ANOVA deve aparecer como F(graus de liberdade) = valor de F; valor de p.

O ideal é que testes estatísticos sejam reportados juntamente com seus tamanhos de efeito. No caso deste exemplo, ficaria assim:

NoteANOVA completa

A análise de variância (ANOVA) indicou diferença estatisticamente significativa (\(F(2) = 4,85; p = 0,016\)), com um tamanho de efeito grande (\(\eta^2 = 0,26\)).

6 Testes pareados post-hoc após uma ANOVA

Como continuação da ANOVA realizada na seção anterior com os dados PlantGrowth.

6.1 Códigos

6.1.1 Testes de Tukey

# ANOVA:
anova_plants <- aov(weight ~ group, 
                    data = PlantGrowth)

# Teste de Tukey
TukeyHSD(anova_plants)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = weight ~ group, data = PlantGrowth)

$group
            diff        lwr       upr     p adj
trt1-ctrl -0.371 -1.0622161 0.3202161 0.3908711
trt2-ctrl  0.494 -0.1972161 1.1852161 0.1979960
trt2-trt1  0.865  0.1737839 1.5562161 0.0120064

6.2 Resultados

NoteTeste de Tukey post-hoc

O peso médio foi maior no grupo tratado 2 (\(m = 5,53; dp = 0,44\)), seguido pelo grupo controle (\(m = 5,03; dp = 0,58\)), e com o menor peso presente no grupo tratado 1 (\(m = 4,66; dp = 0,79\)). A análise de variância (ANOVA) indicou diferença estatisticamente significativa (\(F(2) = 4,85; p = 0,016\)), porém comparações pós-hoc com o teste de Tukey revelaram que houve diferença significativa apenas entre os grupos de tratamento (diferença = 0,87; p = 0,012; IC95%[0,17; 1,56]). As comparações entre os grupos de tratamento e o controle não foram significativas (trt1-ctrl: p = 0,39; trt2-ctrl: p = 0,2).

7 Teste de qui-quadrado

Exemplo com os dados HairEyeColor.

7.1 Códigos

7.1.1 Tabela

# Carregar pacotes
library(flextable)

# Carregar dados
data(HairEyeColor)

# Tabela
tab2d <- margin.table(HairEyeColor, c(1, 2))
prop_row <- prop.table(tab2d, margin = 1)

df_row <- as.data.frame.matrix(prop_row)
df_row <- cbind(Hair = rownames(df_row), df_row)
rownames(df_row) <- NULL

df_row[ , -1] <- round(df_row[ , -1] * 100, 1)

ft <- flextable(df_row)

ft <- colformat_num(
  ft,
  j = 2:ncol(df_row),
  digits = 1,
  suffix = "%"
)

ft

7.1.2 Gráfico

# Somar sexo masculino e feminino
hair_eye = margin.table(HairEyeColor, c(1,2)) 

# Tabela de proporções
propTable = round(prop.table(hair_eye, 1)*100)

# Invertendo o gráfico com transpose
propTable_T <- t(propTable)

barplot(propTable_T, beside = T,
        ylim = c(0,100),
        col = c("brown4", "darkblue", "coral", "darkgreen"),
        border = "white",
        xlab = "Cabelo")
legend(x=8, y=100, legend = c("Brown", "Blue", "Hazel", "Green"),
       fill = c("brown4", "darkblue", "coral", "darkgreen"),
       title = "Olhos")

7.1.3 Qui-quadrado

chisq.test(hair_eye)

    Pearson's Chi-squared test

data:  hair_eye
X-squared = 138.29, df = 9, p-value < 2.2e-16

7.2 Resultados

Hair

Brown

Blue

Hazel

Green

Black

63.0%

18.5%

13.9%

4.6%

Brown

41.6%

29.4%

18.9%

10.1%

Red

36.6%

23.9%

19.7%

19.7%

Blond

5.5%

74.0%

7.9%

12.6%

NoteQui-quadrado

O teste de qui-quadrado (\(\chi^2(9) = 138, p < 0,001\)) revelou que houve associação significativa entre a cor do cabelo e a cor dos olhos.

Ao longo do parágrado o resultado do qui-quadrado deve aparecer como \(\chi^2\)(graus de liberdade) = valor do qui-quadrado; valor de p.

O ideal é que testes estatísticos sejam reportados juntamente com seus tamanhos de efeito. No caso deste exemplo, ficaria assim:

NoteQui-quadrado completo

O teste de qui-quadrado (\(\chi^2(9) = 138, p < 0,001\)) revelou que houve associação significativa entre a cor do cabelo e a cor dos olhos. No entanto, a presença de associação entre algumas categorias (e.g., cabelo loiro e olhos azuis) e ausência de associação em outras (como em cabelo ruivo) fez com que o tamanho do efeito fosse apenas médio (V de Cramer = 0,27).

8 Teste de correlação

Exemplo com os dados mtcars.

8.1 Códigos

8.1.1 Gráfico

ggplot(mtcars, aes(y = mpg, x = wt)) +
  geom_point() +
  geom_smooth(method = lm) +
  labs(x = "Peso", y = "Autonomia (mpg)") +
  theme_minimal()

8.1.2 Correlação

cor.test(mtcars$mpg, mtcars$wt)

    Pearson's product-moment correlation

data:  mtcars$mpg and mtcars$wt
t = -9.559, df = 30, p-value = 1.294e-10
alternative hypothesis: true correlation is not equal to 0
95 percent confidence interval:
 -0.9338264 -0.7440872
sample estimates:
       cor 
-0.8676594 

8.2 Resultados

NoteCorrelação

Observou-se correlação negativa significativa entre peso do veículo e consumo de combustível, \(r(30) = -0,87; IC95\% [-0.94; -0.74]; p < 0,001\), indicando que veículos mais pesados tendem a apresentar menor eficiência de combustível.

Ao longo do parágrado o resultado do qui-quadrado deve aparecer como r(graus de liberdade) = valor do coeficiente de correlação; IC95% [intervalo de confiança]; valor de p.

9 Testes não paramétricos

Para reportar testes não paramétricos, os princípios são os mesmos de suas contra-partes paramétricas, alterando apenas a letra da estatística resultante, e omitindo os graus de liberdade quando não há.

Por exemplo:

9.1 Teste de Wilcoxon (Mann–Whitney)

wilcox.test(mpg ~ cambio, data = mtcars)

    Wilcoxon rank sum test with continuity correction

data:  mpg by cambio
W = 42, p-value = 0.001871
alternative hypothesis: true location shift is not equal to 0
NoteWilcoxon

Veículos com câmbio manual apresentaram valores de mpg significativamente maiores do que veículos automáticos (\(W = 42; p = 0,002\)).

9.2 Teste de Kruskal–Wallis

kruskal.test(data = PlantGrowth, weight ~ group) 

    Kruskal-Wallis rank sum test

data:  weight by group
Kruskal-Wallis chi-squared = 7.9882, df = 2, p-value = 0.01842
NoteKruskal–Wallis

O teste de Kruskal–Wallis indicou diferença significativa entre os grupos quanto ao peso das plantas, \(χ²(2) = 7,99; p = 0,018\).

9.3 Correlação de Spearman

cor.test(mtcars$mpg, mtcars$wt, method = "spearman")

    Spearman's rank correlation rho

data:  mtcars$mpg and mtcars$wt
S = 10292, p-value = 1.488e-11
alternative hypothesis: true rho is not equal to 0
sample estimates:
      rho 
-0.886422 
NoteSpearman

A correlação de Spearman indicou associação negativa significativa entre as variáveis (\(ρ = -0,89; p < 0,001\)), indicando que veículos mais pesados tendem a apresentar menor eficiência de combustível.

10 Modelo de regressão linear simples (preditor categórico)

10.1 Códigos

10.1.1 Modelo

# Mudar os rótulos de câmbio
mtcars = mtcars |> 
  mutate(cambio = ifelse(am == 0, "automático", "manual"))

# Modelo
modelo = lm(data = mtcars, mpg ~ cambio)

10.1.2 Tabela dos resultados do modelo

library(sjPlot)

tab_model(modelo)

10.1.3 Gráfico de valores previstos pelo modelo

library(sjPlot)

plot_model(modelo, type = "pred") + 
  labs(title = "", y = "Autonomia prevista (mpg)", x = "Tipo de câmbio") +
  theme_minimal()

10.2 Resultados

  mpg
Predictors Estimates CI p
(Intercept) 17.15 14.85 – 19.44 <0.001
cambio [manual] 7.24 3.64 – 10.85 <0.001
Observations 32
R2 / R2 adjusted 0.360 / 0.338
NoteRegressão linear simples

Explicando aproximadamente 36% da variância na autonomia (\(R^2 = 0,36\)), a regressão linear simples que avaliou o efeito do tipo de câmbio sobre a autonomia dos carros revelou um efeito do câmbio manual de 7,24 milhas por galão (\(IC95\% [3,64; 10,85]; p < 0,001\)), indicando que, em média, carros manuais apresentam maior autonomia em relação aos automáticos. O gráfico a seguir apresenta a autonomia prevista pelo modelo para cada tipo de câmbio.

Ao longo do parágrado o resultado do modelo de regressão pode aparecer como \(\beta\) = valor do coeficiente; IC95% [intervalo de confiança]; valor de p para a variável preditora.

É importante, ao reportar modelos de regressão, que o texto guie o leitor na leitura das tabelas e dos gráficos, pensando que pode haver leitores não familiarizados com modelos de regressão e que precisarão de explicações voltadas para as variáveis utilizadas.

11 Modelo de regressão linear simples (preditor contínuo)

11.1 Códigos

11.1.1 Modelo

# Carregar pacotes
library(tidyverse)

# Carregar dados
data(mtcars)

modelo = lm(data = mtcars, mpg ~ wt)

11.1.2 Tabela dos resultados do modelo

library(sjPlot)

tab_model(modelo)

11.1.3 Gráfico de valores previstos pelo modelo

library(sjPlot)

plot_model(modelo, type = "pred") + 
  labs(title = "", y = "Autonomia prevista (mpg)", x = "Peso") +
  theme_minimal()

11.2 Resultados

  mpg
Predictors Estimates CI p
(Intercept) 37.29 33.45 – 41.12 <0.001
wt -5.34 -6.49 – -4.20 <0.001
Observations 32
R2 / R2 adjusted 0.753 / 0.745
NoteRegressão linear simples

Realizou-se uma regressão linear simples para avaliar o efeito do peso do carro (wt) sobre a autonomia (mpg). O modelo explicou aproximadamente 75% da variância na autonomia (\(R² = 0,753\)). O intercepto do modelo foi de 37,29 milhas por galão, representando a autonomia média prevista para um carro com peso zero (referência teórica). O coeficiente do peso foi de -5,34 mpg (\(IC95\% [-6,49; -4,20]; p < 0,001\)), indicando que, em média, cada aumento de 1000 libras no peso do carro está associado a uma redução de 5,34 mpg na autonomia. O gráfico a seguir apresenta a autonomia prevista pelo modelo para cada faixa de peso.

Ao longo do parágrado o resultado do modelo de regressão pode aparecer como \(\beta\) = valor do coeficiente; IC95% [intervalo de confiança]; valor de p para a variável preditora.

É importante, ao reportar modelos de regressão, que o texto guie o leitor na leitura das tabelas e dos gráficos, pensando que pode haver leitores não familiarizados com modelos de regressão e que precisarão de explicações voltadas para as variáveis utilizadas.

12 Modelo de regressão linear múltiplo

12.1 Códigos

12.1.1 Modelo

# Carregar pacotes
library(tidyverse)

# Carregar dados
data(mtcars)

# Mudar os rótulos de câmbio e de motor
mtcars = mtcars |> 
  mutate(cambio = ifelse(am == 0, "automático", "manual")) |> 
  mutate(motor = ifelse(vs == 0, "V", "reto"))

# Modelo  
modelo = lm(data = mtcars, mpg ~ cambio + wt + motor)

12.1.2 Tabela dos resultados do modelo

library(sjPlot)

tab_model(modelo)

12.1.3 Gráfico de valores previstos pelo modelo

library(sjPlot)

plot_model(modelo, type = "pred") + 
  labs(title = "", y = "Autonomia prevista (mpg)", x = "Peso") +
  theme_minimal()

12.2 Resultados

  mpg
Predictors Estimates CI p
(Intercept) 33.69 27.50 – 39.89 <0.001
cambio [manual] 1.49 -1.55 – 4.54 0.324
wt -3.78 -5.62 – -1.94 <0.001
motor [V] -3.62 -6.23 – -1.00 0.008
Observations 32
R2 / R2 adjusted 0.808 / 0.787
NoteRegressão linear múltipla

Para investigar a influência do tipo de câmbio (am), do peso do carro (wt) e do tipo de motor (vs) sobre a autonomia (mpg), realizou-se uma regressão linear múltipla, que explicou cerca de 79% da variância na autonomia (R² ajustado = 0,79). O câmbio manual apresentou um aumento médio de 1,49 milhas por galão em relação ao automático, porém sem significância estatística (\(p = 0,324\)). O peso do carro foi negativamente associado à autonomia, reduzindo em média 3,78 mpg a cada 1000 libras adicionais (\(p < 0,001\)), e o motor em V apresentou diminuição média de 3,62 mpg (\(p = 0,008\)) em comparação ao motor em linha. O gráfico a seguir apresenta a autonomia prevista pelo modelo para cada tipo de motor e faixas de peso.

Ao longo do parágrado o resultado do modelo de regressão pode aparecer como \(\beta\) = valor do coeficiente; IC95% [intervalo de confiança]; valor de p para as variáveis preditoras.

Ao reportar modelo múltiplos, principalmente aqueles com muitas variáveis preditoras, é importante guiar o leitor na leitura da tabela e dos gráficos chamando atenção para os efeitos que mais relevantes, que, muitas vezes, podem o ser não pelos resultados, mas também pelo papel que eles têm na pesquisa como um todo.

13 Modelo de regressão logística

13.1 Códigos

13.1.1 Modelo

# Carregar pacotes
library(tidyverse)

# Carregar dados
data(mtcars)

# Modelo  
modelo <- glm(am ~ mpg + wt + hp,
               data = mtcars,
               family = binomial)

13.1.2 Tabela dos resultados do modelo

library(sjPlot)

tab_model(modelo) # resultado em odds ratios

tab_model(modelo, transform - NULL) # resultado em log-odds

13.1.3 Gráfico de valores previstos pelo modelo

library(sjPlot)

plot_model(modelo, type = "pred") + 
  labs(title = "", y = "Autonomia prevista (mpg)", x = "Peso") +
  theme_minimal()

13.2 Resultados

Modelos de regressão logística impõem um desafio ao reportar os resultados porque os coeficientes são dados no log das chances (log-odds), que podem ser transformados em razão das chances (odds ratios), porém com a expectativa intuitiva da maioria dos leitores de interpretar as probabilidades. Por isso, é preciso prmeiramente decidir se vai reportar os resultados em log-odds ou odds ratios e, em qualquer um dos casos, explicar para o seu leitor como interpretar, trazendo probabilidades sempre que possível, principalmente no gráfico de valores (probabilidades) previstos pelo modelo.

13.2.1 Opção 1: odds ratios

  am
Predictors Odds Ratios CI p
(Intercept) 0.00 0.00 – 0.00 0.026
mpg 3.52 1.61 – 15.97 0.026
hp 1.06 1.02 – 1.13 0.041
Observations 32
R2 Tjur 0.578
NoteRegressão logística (odds ratios)

Para verificar a probabilidade de um carro ter câmbio manual em função de sua autonomia (em milhas por galão, mpg) e de sua potência (em cavalos, hp), foi ajustado um modelo de regressão logística. O modelo prevê chances 3,52 vezes maiores de do carro ter câmbio manual para cada aumento milha por galão na autonomia (\(OR = 3,52; IC95\% [1,61; 15,97]; p = 0,026\)); e um aumento de 6% nas chances de ter câmbio manual para cada unidade de aumento em sua potência (\(OR = 1,06; IC95\% [1,02; 1,13]; p = 0,041\)), sendo ambos efeitos significativos. No entanto, o modelo apresenta um poder explicativo de apenas 58% (\(R² = 0,578\)). O gráfico dos valores previstos pelo modelo indica as probabilidades do carro ter câmbio manual para cada faixa de autonomia e de potência.

Ao longo do parágrado o resultado do modelo de regressão pode aparecer como \(\beta\) = valor do coeficiente; IC95% [intervalo de confiança]; valor de p para as variáveis preditoras.

É importante, ao reportar modelos de regressão logística com odds ratios, presumir que nem todos os leitores serão familiarizados com chances, e, por isso, ao longo do parágrafo vale explicar como cada coeficiente afeta os aumentos ou reduções das chances, principalmente das que foram significativas.

13.2.2 Opção 2: log odds

  am
Predictors Log-Odds CI p
(Intercept) -33.61 -73.64 – -12.66 0.026
mpg 1.26 0.47 – 2.77 0.026
hp 0.06 0.02 – 0.13 0.041
Observations 32
R2 Tjur 0.578
NoteRegressão logística (log-odds)

Para verificar a probabilidade de um carro ter câmbio manual em função de sua autonomia (em milhas por galão, mpg) e de sua potência (em cavalos, hp), foi ajustado um modelo de regressão logística. Os coeficientes dos modelo na tabela acima estão no logaritmo das chances, cujo ponto de equilíbrio é o 0, e valres positivos indicam aumento da probilidade de ter câmbio manual e valores negativos indicariam diminuição dessa probabilidade. Sendo assim, o modelo ajustado prevê um aumento significativo na probabilidade do carro ter câmbio manual para cada aumento de autonomia (\(β = 1,26; IC95\% [0,47; 2,77]; p = 0,026\)), bem como um aumento significativo da probabilidade de um carro ter câmbio manual para para cada unidade de aumento em sua potência (\(β = 0,06; IC95\% [0,02; 0,13]; p = 0,041\)). No entanto, o modelo apresenta um poder explicativo de apenas 58% (\(R² = 0,578\)). O gráfico dos valores previstos pelo modelo indica as probabilidades do carro ter câmbio manual para cada faixa de autonomia e de potência.

Ao longo do parágrado o resultado do modelo de regressão pode aparecer como \(\beta\) = valor do coeficiente; IC95% [intervalo de confiança]; valor de p para as variáveis preditoras.

É importante, ao reportar modelos de regressão logística com log-odds, presumir que nem todos os leitores serão familiarizados com chances, muito menos com o log das chances, e, por isso, ao longo do parágrafo é bom explicar como cada coeficiente afeta os aumentos ou diminuições das chances, principalmente das que foram significativas.

14 Modelo de regressão com efeitos mistos/aleatórios

14.1 Códigos

14.1.1 Modelo

# Carregar pacotes
library(tidyverse)
library(lme4)

# Carregar dados
data(sleepstudy)

# Modelo  
modelo <- lmer(Reaction ~ Days + (Days | Subject), data = sleepstudy)

14.1.2 Tabela dos resultados do modelo

library(sjPlot)

tab_model(modelo)

14.1.3 Gráfico de valores previstos pelo modelo

library(sjPlot)

plot_model(modelo, type = "pred") +
  labs(title = "", y = "Tempo de reação prevista", x = "Dias sem dormir") +
  theme_minimal()

14.2 Resultados

  Reaction
Predictors Estimates CI p
(Intercept) 251.41 237.94 – 264.87 <0.001
Days 10.47 7.42 – 13.52 <0.001
Random Effects
σ2 654.94
τ00 Subject 612.10
τ11 Subject.Days 35.07
ρ01 Subject 0.07
ICC 0.72
N Subject 18
Observations 180
Marginal R2 / Conditional R2 0.279 / 0.799

Ao se ajustar um modelo de regressão com efeitos aleatório/mistos, normalmente a pesquisa continua interessada nos efeitos fixos, porém acrescenta os efeitos aleatórios para informar o modelo sobre a dependência de dados repetidos. Sendo assim, o texto sobre os resultados pode ser como nos demais modelos, podendo acrescentar um comentário sobre os efeitos aleatórios ao final.

NoteRegressão com efeitos mistos/aleatórios)

Para verificar o possível efeito de privação de sono sobre o tempo de reação de indivíduos, foi ajustado um modelo de regressão linear de efeitos mistos (ou efeitos aleatórios, ou hierárquico) com interceptos aleatórios por participante e inclinação aleatória de dias por participante, a fim de modelar a dependência entre observações repetidas. O modelo prevê um aumento significativo de 10,5 milissegundos no tempo de reação para a cada dia mais sem dormir (\(β = 10,5; IC95\% [7,42; 13,52]; p < 0,001\)). O modelo explica aproximadamente 80% da variação no tempo de reação a partir do efeito fixo de dias e dos efeitos aleatórios de participante (R² = 0,799). O gráfico a seguir apresenta os tempos de reação previstos pelo modelo para cada tempo de privação de sono. Com relação aos efeitos aleatórios, o desvio-padrão do intercepto aleatório foi de 24,7 por participante (raiz quadrada de \(\tau00 Subject\) da tabela), e na inclinação a variação foi de 5,92 DP por participante (raiz quadrada de \(\tau11 Subject.Days\) da tabela).

Assim como nos demais modelos de regressão, ao longo do parágrafo o resultado do modelo de regressão pode aparecer como \(\beta\) = valor do coeficiente; IC95% [intervalo de confiança]; valor de p para as variáveis preditoras.

Caso o não tenha sido possível incluir inclinaçãointercepto e inclinação aleatórios no seu modelo por aviso de singular fit ou por falta de convergência do modelo, informe isso no seu parágrafo para que o leitor entenda o motivo da simplificação do modelo.

15 Demais modelos de regressão

Para os demais modelos de regressão (e.g., ordinal, poisson, multinomial, etc.) seguem-se os mesmos princípios, sempre guiando o leitor em compreender os coeficientes das tabelas e fazendo referência aos valores previstos pelo modelo por meio de gráficos.