library(tidyverse)
met <- read_csv("https://denvirlab.marshall.edu/BMR617-2021/data/TH-B6-metabolic.csv")
met <- separate(met, MouseID, sep="-", into=c("Strain", "Diet", "ID"))
th <- filter(met, Strain == "TH")
th_grouped <- group_by(th, Diet)
th_summary <- summarise(th_grouped, 
    MeanCholesterol=mean(Cholesterol),
    n=n(),
    sd=sd(Cholesterol),
    sem=sd/sqrt(n))
ggplot(th_summary, aes(x=Diet, y=MeanCholesterol)) +
  geom_bar(stat="identity", fill="#00B140") +
  geom_errorbar(aes(ymin=MeanCholesterol-sem, ymax=MeanCholesterol+sem),width=0.2)

met_grouped <- group_by(met, Diet, Strain)
met_summary <- summarise(met_grouped, 
    MeanCholesterol=mean(Cholesterol),
    n=n(),
    sd=sd(Cholesterol),
    sem=sd/sqrt(n))
ggplot(met_summary, aes(x=Diet, y=MeanCholesterol, fill=Strain)) +
  geom_bar(stat="identity", position=position_dodge()) +
  geom_errorbar(aes(ymin=MeanCholesterol-sem, ymax=MeanCholesterol+sem),
      position=position_dodge(0.9), width=0.2)

barchart <- ggplot(met_summary, aes(x=Diet, y=MeanCholesterol, fill=Strain)) +
  geom_bar(stat="identity", position=position_dodge())
semErrorBars <- geom_errorbar(aes(ymin=MeanCholesterol-sem, ymax=MeanCholesterol+sem),
                              position=position_dodge(0.9), width=0.2)
sdErrorBars <- geom_errorbar(aes(ymin=MeanCholesterol-sd, ymax=MeanCholesterol+sd),
                             position=position_dodge(0.9), width=0.2)

barchart + semErrorBars
barchart + sdErrorBars

barchart + semErrorBars + ylab("Cholesterol (mg/dl)") + ggtitle("Cholesterol by Strain and Diet")
