library(tidyverse)
met <- read_csv('https://denvirlab.marshall.edu/BMR617-2022/data/TH-B6-metabolic.csv')
met <- separate(met, MouseID, sep="-", into=c("Strain", "Diet", "ID"))
met <- mutate(met, Strain = as.factor(Strain), Diet = as.factor(Diet))
met.b6 <- filter(met, Strain == 'B6')
chol.b6.aov <- aov(Cholesterol ~ Diet, data=met.b6)
summary(chol.b6.aov)

library(multcomp)
chol.b6.tukey <- glht(chol.b6.aov, linfct = mcp(Diet = "Tukey"))
summary(chol.b6.tukey)
confint(chol.b6.tukey)

chol.b6.dunnett <- glht(chol.b6.aov, linfct = mcp(Diet = "Dunnett"))
summary(chol.b6.dunnett)
confint(chol.b6.dunnett)

plot(confint(chol.b6.tukey))
plot(confint(chol.b6.dunnett))

conf.intervals <- confint(chol.b6.tukey)$confint
conf.intervals <- as_tibble(conf.intervals, rownames="Comparison")
ggplot(conf.intervals, aes(x=Comparison, y=Estimate)) +
geom_point() +
geom_errorbar(aes(ymin=lwr, ymax=upr), width=0.4) +
geom_hline(yintercept=0) +
ylab("Difference in Cholesterol Levels (mg/dl)") +
coord_flip() +
ggtitle("95% Confidence Intervals")
