# ===========================================================
# Calculate Spawn Date From Otolith Per Temperature Treatment
# ===========================================================
# --------
# Plus Two
# --------
tempData <- finalTemp %>%
filter( treatment == "two" )
spawnDate <- function( date ,
slideNumber) {
tempData %>% filter( detectionDate < date ) %>%
mutate( cumulativeDevelopment = rev(cumsum(rev(rate)))) %>%
filter( cumulativeDevelopment < 47) %>%
mutate( slideNumber = as.numeric(slideNumber)) }
treatment <- otolithData %>%
filter( Treatment == 2 ) %>%
group_by( date ,
slideNumber ) %>%
nest()
plusTwo <- bind_rows(map2( treatment$date ,
treatment$slideNumber ,
spawnDate)) %>%
group_by( slideNumber ) %>%
summarise( maxDev = max(cumulativeDevelopment) ,
detectionDate = min(detectionDate)) %>%
ungroup() %>%
mutate( dayOfYear = yday(detectionDate),
treatment = "Two")
# ---------
# Plus Zero
# ---------
tempData <- finalTemp %>% filter( treatment == "zero" )
treatment <- otolithData %>%
filter( Treatment == 0 ) %>%
group_by( date ,
slideNumber ) %>%
nest()
plusZero <- bind_rows(map2( treatment$date ,
treatment$slideNumber ,
spawnDate)) %>%
group_by( slideNumber ) %>%
summarise( maxDev = max(cumulativeDevelopment) ,
detectionDate = min(detectionDate)) %>%
ungroup() %>%
mutate( dayOfYear = yday(detectionDate),
treatment = "Zero")
finalEstimated <- bind_rows( plusTwo,
plusZero ) %>%
mutate( development = "Spawned",
daysPastSpawning = abs(311-dayOfYear),
treatment = factor(treatment, levels = c("Zero" ,"Two")))