knitr::opts_chunk$set(
  collapse = TRUE,
  comment = "#>"
)
#| label: setup
#| message: false
#| 
library(tidyverse)
library(planex)
library(emmeans)
library(multcomp)

Delineamentos com um fator

data(saquinhos)
glimpse(saquinhos)

saquinhos <- saquinhos |>
  mutate(
    concentracao = as.factor(concentracao)
  )

mod <- aov(resistencia ~ concentracao, data = saquinhos)
summary(mod)

Pacote emmeans

comp <- emmeans(mod, pairwise ~ concentracao)
comp

# Tukey (default):
pairs(comp)

# mínima diferença significativa de Fisher:
pairs(comp, adjust = "none")

# Bonferroni
pairs(comp, adjust = "bonferroni")

# Dunnet (considerando concentracao de 20% como referencia):
contrast(comp, method = "dunnett", ref = 4)

Pacote multcomp

comp <- glht(mod, linfct = mcp(concentracao = "Tukey"))
comp

# Tukey (default):
summary(comp)

# mínima diferença significativa de Fisher:
summary(comp, test = adjusted(type = "none"))

# Bonferroni
summary(comp, test = adjusted(type = "bonferroni"))

# Dunnett:
saquinhos <- saquinhos |>
  mutate(
    concentracao = relevel(concentracao, ref = "20")
  )
mod <- aov(resistencia ~ concentracao, data = saquinhos)
dunnett <- glht(mod, linfct = mcp(concentracao = "Dunnett"))
summary(dunnett)

Delineamentos com dois fatores

# alterando a classe para factor:
baterias <- baterias %>%
  mutate(
    across(c("tipo", "temperatura"), as.factor)
  )

# sumarizando:
mod <- aov(tempo ~ temperatura*tipo, data=baterias)
summary(mod)

Comparações múltiplas para delineamentos com dois fatores e efeito de interação significativo.

Pacote emmeans

comp <- emmeans(mod, pairwise ~ tipo|temperatura)
comp
summary(comp)

comp <- emmeans(mod, pairwise ~ temperatura|tipo)
comp
summary(comp)

# forma mais eficiente:
comp <- emmeans(mod, pairwise ~ tipo*temperatura)
comp    

pairs(comp, simple = "tipo")   
pairs(comp, simple = "temperatura")  

# cálculo do p-valor para o teste de Tukey (tipo 1 -  tipo 2):
ptukey(abs(-1.143)*sqrt(2), nmeans = 3, df = 27, lower.tail = FALSE)
ptukey(abs(-1.143)*sqrt(2), nmeans = 9, df = 27, lower.tail = FALSE)

# teste da mínima diferença significativa de Fisher:
summary(comp, adjust = "none")
pairs(comp, simple = "tipo", adjust = "none")   
pairs(comp, simple = "temperatura", adjust = "none")  


# teste com correção de Bonferroni:
summary(comp, adjust = "bonferroni")
pairs(comp, simple = "tipo", adjust = "bonferroni")   
pairs(comp, simple = "temperatura", adjust = "bonferroni") 

Exemplo envolvendo delineamento com dois fatores fixos cruzados e efeito de interação não significativo

data(zarcao)

zarcao <- zarcao %>%
  mutate(
    tipo = as.factor(tipo)
  )

mod <- aov(adesao ~ tipo*metodo, data=zarcao)

emmeans(mod, pairwise ~ tipo)
emmeans(mod, pairwise ~ metodo)

Delineamentos com 3 fatores fixos cruzados

data(refrigerantes)
glimpse(refrigerantes)

mod <- aov(desvio ~ carbonatacao*pressao*velocidade, 
           data=refrigerantes)
summary(mod)

Pacote emmeans

comp <- emmeans(mod, pairwise ~ carbonatacao*pressao*velocidade)
comp

# comparando níveis de carbonatação dentro de cada combinação dos níveis dos demais fatores
pairs(comp, simple = list(c("pressao", "velocidade"), "carbonatacao"))


fndemarqui/planex documentation built on July 9, 2024, 2:13 a.m.