Parasite infection but not chronic microplastic exposure reduces the feeding and growth rate in a freshwater fish Ben Parker*, J. Robert Britton, Iain D. Green, Fátima Amat-Trigo, Demetra Andreou Department of Life and Environmental Sciences, Faculty of Science and Technology, Bournemouth University, Poole, Dorset, BH12 5BB, UK. *Corresponding author: bparker@bournemouth.ac.uk Research data readme and R data analyses Data readme file The below table provides more detail on the “PARA MP data.csv” file to aid in navigating through the research data and later analyses. Please refer to the related manuscript for all experimental details. Please email bparker@bournemouth.ac.uk with any queries. Data column(s) Details Tank Tank number (ID) the individual fish was randomly assigned to. Please refer to Figure S1 for the location of each tank. Batch Batch number the fish was randomly assigned to. This determined which days the fish was fed their experimental diet as well as when certain stages took place. Rack The rack within which the tank was placed. Please refer Figure S1 for the rack schematic and location of each tank. Parasite The gammarid exposure condition: U = uninfected and I = infected gammarid exposure Diet The diet exposure condition: C = control, E = mean ecological and 2E = twice mean ecological levels. Please refer to the manuscript for further details on the exposure. Start.day The experimental date upon which the fish was allocated to an individual tank. Mass.S The starting wet mass (g) measured before transfer of the fish into an individual tank. SL.S The starting standard length (cm) measured before transfer of the fish into an individual tank. Premortality Whether the fish died before completion of the experiment. These fish were excluded from most analyses. Mortality.day The day of the experiment upon which the fish died. Gamm.exp The date of the gammarid exposure (infected or uninfected individuals). Gamm.no The number of gammarids presented during the parasite exposure (infected or uninfected individuals). Gamm.rem The number of gammarids remaining after the 24 h gammarid exposure. Gamm.eaten The number of gammarids recovered after the 24 h gammarid exposure. Notes.Gamm Any notes on the gammarid exposure for example the number of gammarids alive and dead or any regurgitated material. FR The date of the functional response experiment. FR.density The number of uninfected gammarids presented within the 1 h functional response experiment (each fish was subject to a single density). FR.rem The number of uninfected gammarids remaining after the 1 h functional response experiment (each fish was subject to a single density). FR.eaten The number of uninfected gammarids eaten during the 1 h functional response experiment (each fish was subject to a single density). Notes.FR Any notes on the recovered gammarids such as the number alive and dead. Euthanisation The date upon which the fish was euthanised, dissected and screened. End.day The experimental day upon which the fish was euthanised, dissected and screened. SL.E The end standard length (cm) recorded after euthanisation. TL.E The end total length (cm) recorded after euthanisation. Mass.E The end wet mass (g) recorded after euthanisation. MPs The number of microplastics identified in the gastrointestinal tract during screening. Parasites The number of parasites identified in the gastrointestinal tract during screening. Para.W The total wet mass of all parasites identified in and removed from the gastrointestinal tract. Visc.W The total wet mass (g) recorded after the euthanisation and removal of all internal organs. Spleen.W The total wet mass (g) of the spleen.   R Data analyses The below copied markdown document includes all analyses and plots created using data from the “PARA MP data.csv” file. All data analyses were carried out in RStudio version 3.5.1 (RStudio: Integrated Development for R. RStudio, PBC, Boston, MA URL http://www.rstudio.com). Please refer to the related manuscript for details on the analyses. Please email bparker@bournemouth.ac.uk with any queries. --- title: Parasite infection but not chronic microplastic exposure reduces the feeding and growth rate in a freshwater fish author: "Ben Parker" date: "15/08/2022" output: word_document: default html_document: default --- # Required packages ```{r} library(frair) library(ggplot2) library(car) library(lme4) library(ggpubr) ``` # Load data and convert various to factors ```{r} ParaMPdata<-read.csv("PARA MP data.csv") ParaMPdata$Batch<-as.factor(ParaMPdata$Batch) ParaMPdata$Diet<-as.factor(ParaMPdata$Diet) ParaMPdata$Para.W[is.na(ParaMPdata$Para.W)] <- 0 ``` # Reorder MP and parasite factor level order ```{r} ParaMPdata$Diet <- factor(ParaMPdata$Diet, levels = c("C", "E", "2E")) ParaMPdata$Parasite <- factor(ParaMPdata$Parasite, levels = c("U","I")) ``` # Calculate values e.g. Fulton's condition (K),Specific growth rate (SGR) and Splenosomatic index (SSI) ```{r} ParaMPdata$Mass.E-ParaMPdata$Para.W->ParaMPdata$Mass.E ParaMPdata %>% mutate(K.start =100*Mass.S/SL.S^3,K.end =100*Mass.E/SL.E^3,K.change=K.end-K.start,SGR=((log(Mass.E)-log(Mass.S))*100)/(End.day-Start.day),SSI=100*(Spleen.W/Mass.E))->ParaMPdata ``` # Standard error function ```{r} se <- function(x) sd(x)/sqrt(length(x)) ``` # Starting fish summary data ```{r} mean(ParaMPdata$SL.S) se(ParaMPdata$SL.S) mean(ParaMPdata$Mass.S) se(ParaMPdata$Mass.S) ``` #_______________________________________________________________________ # RESULTS 1-Premortality #_______________________________________________________________________ # Overall premortality ```{r} length(which(ParaMPdata$Premortality=="Y")/length(ParaMPdata$Tank)) 100*(length(which(ParaMPdata$Premortality=="Y")/length(ParaMPdata$Tank))/length(ParaMPdata$Tank)) ``` # By diet premortality ```{r} ParaMPdata %>% group_by(Diet) %>% dplyr::summarise(n=n(),Premortality=length(which(Premortality=="Y")),Percentage.Premortality=100*(Premortality/50))->Premortality.summary Premortality.summary ``` # Test if premortality varied between diets ```{r} chisq.test(Premortality.summary$Premortality,Premortality.summary$Diet) ``` # Exclude premortality fish for additional analyses ```{r} ParaMPdata %>% filter(Premortality!="Y")->Survivors ``` #_______________________________________________________________________ # RESULTS 2-Parasite load #_______________________________________________________________________ # Subset for those that became infected ```{r} infected<-subset(Survivors,Parasite=="I"&Parasites>0) ``` # Visualise data ```{r} hist(infected$Parasites) ``` # Plot parasites consumed against parasite load ```{r} ggplot(infected, aes(x=Gamm.eaten, y=Parasites,color=Diet)) + geom_point(size=2)+labs(x ="Parasites consumed", y ="Parasite load")+theme(panel.grid.major = element_blank(), panel.grid.minor = element_blank(), panel.background = element_blank(), axis.line = element_line(colour = "black"))+scale_color_manual(values = c("C" = "blue","E"="yellow","2E"="red")) ``` # Model if parasite load can be explained by diet ```{r} glmer(Parasites~Gamm.eaten+Diet+(1|Batch)+(1|Rack),family="poisson",data=infected)->paramod1 Anova(paramod1) summary(paramod1) ``` # Test a negative binomial variant due to overdispersion ```{r} glmer.nb(Parasites~Gamm.eaten+Diet+(1|Batch)+(1|Rack),family="poisson",data=infected)->paramod2 Anova(paramod2) summary(paramod2) ``` # Retain paramod 1 # Extract model estimates ```{r} ci <- confint(paramod1,parm="beta_",method="Wald") ``` # Create data frame ```{r} summ_tab <- data.frame("Estimate" = fixef(paramod1), "LCI" = ci[,1], "UCI" = ci[,2]) summ_tab <- summ_tab[-1,] summ_tab$Variable <- rownames(summ_tab) ``` # Make a caterpillar plot of the data ```{r} infcat_plot <- ggplot(data = summ_tab)+ geom_point(aes(y = Variable, x = Estimate)) + geom_linerange(aes(y=Variable, x = Estimate, xmin = LCI, xmax = UCI)) + geom_vline(xintercept = 0, linetype = "dotted") + xlab("Parameter estimates") + ylab("Variable") + theme_cowplot()+ scale_y_discrete(labels = c("2E","E","Parasites consumed")) infcat_plot ``` # SAVE PLOT TO JOURNAL STANDARDS ```{r} ggsave("Infectedmod.jpeg", dpi = 600, width = 200, height = 200, unit = "mm") ``` #_______________________________________________________________________ # RESULTS 3A-change in condition #_______________________________________________________________________ # Does condition change vary with diet and infection status? ```{r} glmer(K.change~Parasite*Diet+FR.eaten+(1|Batch)+(1|Rack),family="gaussian",data=Survivors)->Kmod1 Anova(Kmod1) ``` # no interactive effect of Diet and parasite so use main effects only ```{r} glmer(K.change~Parasite+Diet+FR.eaten+(1|Batch)+(1|Rack),family="gaussian",data=Survivors)->Kmod1 summary(Kmod1) Anova(Kmod1) ``` # Extract parameter estimates ```{r} ci <- confint(Kmod1,parm="beta_",method="Wald") ``` # Create data frame ```{r} summ_tab <- data.frame("Estimate" = fixef(Kmod1), "LCI" = ci[,1], "UCI" = ci[,2]) summ_tab <- summ_tab[-1,] summ_tab$Variable <- rownames(summ_tab) ``` # Make a caterpillar plot of the data ```{r} condcat_plot <- ggplot(data = summ_tab)+ geom_point(aes(y = Variable, x = Estimate)) + geom_linerange(aes(y=Variable, x = Estimate, xmin = LCI, xmax = UCI)) + geom_vline(xintercept = 0, linetype = "dotted") + xlab("Parameter estimates") + ylab("Variable") + theme_cowplot()+ scale_y_discrete(labels = c("2E","E","Gammarids consumed","Infected")) condcat_plot ``` #_______________________________________________________________________ # RESULTS 3B-Specific growth rate #_______________________________________________________________________ ```{r} hist(Survivors$SGR) ``` # Does specific growth rate vary with diet and infection status? ```{r} glmer(SGR~Parasite*Diet+FR.eaten+(1|Batch)+(1|Rack),family="gaussian",data=Survivors)->SGRmod1 summary(SGRmod1) Anova(SGRmod1) ``` # no interactive effect of Diet and parasite so use main effects only ```{r} glmer(SGR~Parasite+Diet+FR.eaten+(1|Batch)+(1|Rack),family="gaussian",data=Survivors)->SGRmod1 summary(SGRmod1) Anova(SGRmod1) ``` # Extract parameter estimates ```{r} ci <- confint(SGRmod1,parm="beta_",method="Wald") ``` # Create data frame ```{r} summ_tab <- data.frame("Estimate" = fixef(SGRmod1), "LCI" = ci[,1], "UCI" = ci[,2]) summ_tab <- summ_tab[-1,] summ_tab$Variable <- rownames(summ_tab) ``` # Make a plot of the data ```{r} SGRcat_plot <- ggplot(data = summ_tab)+ geom_point(aes(y = Variable, x = Estimate)) + geom_linerange(aes(y=Variable, x = Estimate, xmin = LCI, xmax = UCI)) + geom_vline(xintercept = 0, linetype = "dotted") + xlab("Parameter estimates") + ylab("Variable") + theme_cowplot()+ theme_cowplot()+ scale_y_discrete(labels = c("2E","E","Gammarids consumed","Infected")) SGRcat_plot ``` #_______________________________________________________________________ # RESULTS 3C-SSI #_______________________________________________________________________ # Visualise data ```{r} hist(Survivors$SSI) ``` # Run a model to test for interactions ```{r} glmer(SSI~Parasite*Diet+FR.eaten+(1|Batch)+(1|Rack),family="gaussian",data=Survivors)->SSImod1 Anova(SSImod1) summary(SSImod1) ``` # No interactive effect of parasite and diet so use main effects only ```{r} glmer(SSI~Parasite+Diet+FR.eaten+(1|Batch)+(1|Rack),family="gaussian",data=Survivors)->SSImod1 Anova(SSImod1) summary(SSImod1) ``` # Extract parameter estimates ```{r} ci <- confint(SSImod1,parm="beta_",method="Wald") ``` # Create data frame ```{r} summ_tab <- data.frame("Estimate" = fixef(SSImod1), "LCI" = ci[,1], "UCI" = ci[,2]) summ_tab <- summ_tab[-1,] summ_tab$Variable <- rownames(summ_tab) ``` # Make a plot of the data ```{r} SSIcat_plot <- ggplot(data = summ_tab)+ geom_point(aes(y = Variable, x = Estimate)) + geom_linerange(aes(y=Variable, x = Estimate, xmin = LCI, xmax = UCI)) + geom_vline(xintercept = 0, linetype = "dotted") + xlab("Parameter estimates") + ylab("Variable") + theme_cowplot()+ scale_y_discrete(labels = c("2E","E","Gammarids consumed","Infected")) SSIcat_plot ``` # Create a multiplot figure with all morphometrics ```{r} figure <- ggarrange(condcat_plot,SGRcat_plot,SSIcat_plot, labels = c("A", "B", "C"), ncol = 1, nrow =3,font.label=list(color="black",size=12)) figure ``` # Save the combined plot ```{r} ggsave("Indexmods.jpeg", dpi = 600, width = 140, height = 220, unit = "mm") ``` #_______________________________________________________________________ # RESULTS 4-Functional Response #_______________________________________________________________________ # Exclude samples where 0 were consumed: ```{r} subset(Survivors,FR.eaten>0)->funcres ``` # Model number consumed with the interaction of diet and parasite exposure using normal poisson ```{r} glmer(FR.eaten~Parasite*Diet+(1|Batch)+(1|Rack),family="poisson",data=funcres)->FRmod1 Anova(FRmod1) summary(FRmod1) ``` # Model number consumed with the interaction of diet and parasite exposure using negative binomial variant ```{r} glmer.nb(FR.eaten~Parasite*Diet+(1|Batch)+(1|Rack),family="poisson",data=funcres)->FRmod2 Anova(FRmod2) summary(FRmod2) ``` # No interactive effect so only use main effects ```{r} glmer.nb(FR.eaten~Parasite+Diet+(1|Batch)+(1|Rack),family="poisson",data=funcres)->FRmod2 summary(FRmod2) Anova(FRmod2) ``` # Extract parameter estimates ```{r} ci <- confint(FRmod2,parm="beta_",method="Wald") ``` # Create data frame ```{r} summ_tab <- data.frame("Estimate" = fixef(FRmod2), "LCI" = ci[,1], "UCI" = ci[,2]) summ_tab <- summ_tab[-1,] summ_tab$Variable <- rownames(summ_tab) ``` # Make a plot of the data ```{r} FRcat_plot <- ggplot(data = summ_tab)+ geom_point(aes(y = Variable, x = Estimate)) + geom_linerange(aes(y=Variable, x = Estimate, xmin = LCI, xmax = UCI)) + geom_vline(xintercept = 0, linetype = "dotted") + xlab("Parameter estimates") + ylab("Variable") + theme_cowplot()+ scale_y_discrete(labels = c("2E","E","Infected")) FRcat_plot ``` # Only parasite infection is significant, therefore aggregate by infection status ```{r} I<-subset(funcres,Parasite=="I") U<-subset(funcres,Parasite=="U") ``` # Boostrap using infected ```{r} Ir<-frair_fit(FR.eaten~FR.density,data=I,response='rogersII',start=list(a = 1.2, h = 0.015), fixed=list(T=1)) Ib<- frair_boot(Ir,nboot=200) confint(Ib) ``` # Boostrap using uninfected ```{r} Ur<-frair_fit(FR.eaten~FR.density,data=U,response='rogersII',start=list(a = 1.2, h = 0.015), fixed=list(T=1)) Ub<- frair_boot(Ur,nboot=200) confint(Ub) ``` # Stats for a and h: ```{r} frair_compare(Ir, Ur, start = NULL) ``` # Plot a base graph of aggregate U vs I ```{r} par(mfrow=c(1,1)) plot(ICb, xlim=c(0,70), ylim=c(0,50), xlab="Initial prey density", ylab="Mean prey consumed", main="", pch=NA, tcl=-0.5, axes=F, xaxs="i",yaxs="i") axis(1, tck=0.02, cex.axis=0.8) axis(2, tck=0.02, cex.axis=0.8)+drawpoly(Ib, probs=c(0.05, 0.95), border=NA, col="darkgrey") lines(Ib,lty=1,lwd=1.5)+drawpoly(Ub, probs=c(0.05, 0.95), border=NA, col= "lightgrey") lines(Ub,lty=2,lwd=1.5)->UI legend("topleft", inset=.02, c("Uninfected","Infected"),fill=c("lightgrey","darkgrey"),bty = "n", horiz=F, cex=1.4) UI ``` # Create and save uninfected/infected plot ```{r} jpeg(file = "UI.jpeg",width=2000,height=2000,res=300) plot(ICb, xlim=c(0,70), ylim=c(0,50), xlab="Initial prey density", ylab="Mean prey consumed", main="", pch=NA, tcl=-0.5, axes=F, xaxs="i",yaxs="i") axis(1, tck=0.02, cex.axis=0.8) axis(2, tck=0.02, cex.axis=0.8)+drawpoly(Ib, probs=c(0.05, 0.95), border=NA, col="darkgrey") lines(Ib,lty=1,lwd=1.5)+drawpoly(Ub, probs=c(0.05, 0.95), border=NA, col= "lightgrey") lines(Ub,lty=2,lwd=1.5) legend("topleft", inset=.02, c("Uninfected","Infected"),fill=c("lightgrey","darkgrey"),bty = "n", horiz=F, cex=1.4) dev.off() ```