Use this to calculate discrete unit pH values.
Checking the relationship between the pH reading on the Hach and from the discrete samples. Using “start” Hach measurements from the header tanks since that’s when and where the discrete samples were taken from. X=discrete, y=hach.
Note from lab notebook to remove R2T2-3-3-1 value due to lab error (Run 2 Treatment 2 Rep bottle 3 )
Let’s subset the data per run. h=hach, d=discrete
r1h<-subset(exp, run=='1')
r2h<-subset(exp, run=='2')
r3h<-subset(exp, run=='3')
r1d<-subset(discrete_ph, run=='1')
r2d<-subset(discrete_ph, run=='2')
r3d<-subset(discrete_ph, run=='3')
First take the average of the discrete replicates to get one one value per treatment per run (12 points total).
r1dav<-aggregate( ph_discrete ~ treatment,r1d, mean)
r2dav<-aggregate( ph_discrete ~ treatment,r2d, mean)
r2dav<-aggregate( ph_discrete ~ treatment,r2d, mean)
Now do the same for the Hach readings
r1hav<-aggregate( header_pH_hach ~ treatment,r1h, mean)
r2hav<-aggregate( header_pH_hach ~ treatment,r2h, mean)
r3hav<-aggregate( header_pH_hach ~ treatment,r3h, mean)
Combine data frames
r1complete<-cbind(r1hav, r1dav)
r2complete<-cbind(r2hav, r2dav)
r3complete<-cbind(r3hav, r2dav)
final<-rbind(r1complete, r2complete, r3complete)
final<-final[-c(1)]
final$treatment<-as.character(final$treatment)
Linear equation
lm_eqn <- function(final){
m <- lm(header_pH_hach ~ ph_discrete, final);
eq <- substitute(italic(Hach) == a + b %.% italic(discrete)*","~~italic(r)^2~"="~r2,
list(a = format(unname(coef(m)[1]), digits = 2),
b = format(unname(coef(m)[2]), digits = 2),
r2 = format(summary(m)$r.squared, digits = 3)))
as.character(as.expression(eq));
}
Graph
ggplot(data = final, mapping = aes(x = ph_discrete, y = header_pH_hach)) + geom_point(aes(colour = treatment)) +geom_smooth(method=lm)+ geom_text(x = 7, y = 8, label = lm_eqn(final), parse = TRUE)+ ggtitle("pH of discrete samples vs Hach readings in header tanks")+ theme(plot.title = element_text(size = 12, face = "plain")) +theme(axis.text=element_text(size=12),axis.title=element_text(size=12,face="plain")) + ylab("pH Hach") + xlab("pH discrete") + theme(panel.grid.major = element_blank(), panel.grid.minor = element_blank(), panel.background = element_blank(), axis.line = element_line(colour = "black"))
## `geom_smooth()` using formula 'y ~ x'