knitr::opts_chunk$set(echo = TRUE) knitr::opts_chunk$set(message = FALSE) knitr::opts_chunk$set(warning = FALSE) library(ProvidenciaChemo) library(tidyverse) library(emmeans) library(modelr) library(tidybayes) library(kableExtra) library(patchwork) theme_set(theme_my)
library(tidyverse) library(patchwork) library(emmeans) library(tidybayes) filepath <- here::here("extdata/Figure_1C_antibiotic.csv") Gent_data <- read_csv(filepath) %>% mutate( treatment = case_when( treatment == "live" ~ "none", treatment == "dead" ~ "dead" ), col_map = interaction(treatment, strain)) %>% droplevels() %>% format_AvoidData(day.correct = "treatment") %>% mutate(plate = factor(seq(1:nrow(.))), treatment = fct_relevel(treatment, "none"), food = fct_relevel(strain, "OP50"), data_type = "raw") %>% filter(!is.na(date)) glmm <- lme4::glmer(data = Gent_data, formula = cbind(nCue,nControl) ~ treatment * food + (1|date) + (1|plate), family = binomial, control= lme4::glmerControl(optimizer="bobyqa")) stan_mod <- rstanarm::stan_glmer(data = Gent_data, formula = cbind(nCue,nControl) ~ food * treatment + (1 | date) + (1|plate), chains = 6, cores = 4, seed = 2000,iter=6000, family = binomial, control = list(adapt_delta=0.99)) fitted <- recenter_fittedValues(Gent_data, stan_mod, BayesFit = "HDI", day.correct = "treatment") plot1 <- Gent_data %>% ggplot(aes(x = data_type, y = rel.Logit)) + stat_summary(geom = "bar", fun.y = mean, aes(fill = food), width = 0.5, alpha = 0.75) + # add.mean(logit_p, colour = "red") + # add.quartiles(logit_p) + ggbeeswarm::geom_quasirandom(aes(colour = food), width = 0.1, alpha = 0.75) + stat_summary(geom = "errorbar", fun.data = mean_se, width = 0.4) + facet_grid(.~ treatment + food, scales = "free_x") + scale_x_discrete(labels = function(food) str_wrap(food, width = 10)) + labs(y = "Test bacteria preference (log-odds)") + #theme(panel.spacing = unit(4, "lines")) + #stat_summary(fun.data = mean_se, geom = "errorbar", width = 0.2) + guides(colour = FALSE) + scale_color_plot(palette = "grey-blue-green", drop = TRUE) + scale_fill_plot(palette = "grey-blue-green", drop = TRUE) + stat_pointinterval(aes(y=rel.Logit, x = 1.4), data = fitted, fatten_point = 0, size_range = c(0.3, 1), colour = "grey") + stat_summary(data = fitted, aes(y=rel.Logit, x = 1.4), fun.y = median, fun.ymin = median, fun.ymax = median, geom = "crossbar", width = 0.05, lwd = 0.35, colour = "grey") + guides(fill = FALSE) plot1 = Gent_data %>% plot_plasticityIndex(xvar = treatment, BayesFit = TRUE, width = 0.2, alpha = 0.7, bar = TRUE, n_pos = -2, dot_color = col_map) + facet_grid(.~food + treatment) + labs(title = "1-oct (corrected)") + scale_color_plot(palette = "2-each", drop = TRUE, rev = TRUE) + scale_fill_plot(palette = "2-each", drop = TRUE, rev = TRUE) + guides(color = FALSE, fill = FALSE) + coord_cartesian(ylim = c(-2.5, 3.25)) glm.lsm.list <- emmeans::ref_grid(glmm) %>% emmeans::emmeans(., pairwise ~ treatment | food, adjust = "mvt") glm.contrasts <- update(glm.lsm.list$contrast, adjust = "mvt", by.vars = NULL) library(nlme) lm <- lm(rel.Logit ~ food * treatment,data = Gent_data) anova(lm) lm.lsm.list <- emmeans::ref_grid(lm) %>% emmeans::emmeans(., pairwise ~ treatment | food, adjust = "Tukey") plot1
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.