From 05be8f23a1851912ac7d0456e35ee3df8010ee13 Mon Sep 17 00:00:00 2001 From: Joe Thorley Date: Tue, 23 Apr 2024 04:28:40 -0700 Subject: [PATCH 1/3] - Added `complete = FALSE` argument to `gsdd_vctr()` and `gss_vctr()` to specifying the vector of water temperatures represents the complete possible growing period. --- R/gsdd-vctr.R | 2 ++ R/gss-vctr.R | 2 ++ R/internal.R | 11 +++++++---- R/params.R | 5 +++++ man/gsdd_vctr.Rd | 7 +++++++ man/params.Rd | 6 ++++++ tests/testthat/_snaps/gss.md | 17 +++++++++++++++++ tests/testthat/test-gss.R | 12 ++++++++++++ 8 files changed, 58 insertions(+), 4 deletions(-) diff --git a/R/gsdd-vctr.R b/R/gsdd-vctr.R index 52a64ce..e3bf805 100644 --- a/R/gsdd-vctr.R +++ b/R/gsdd-vctr.R @@ -19,6 +19,7 @@ gsdd_vctr <- function( end_temp = 4, window_width = 7, pick = "all", + complete = FALSE, msgs = TRUE) { gss <- .gss_vctr( x, @@ -28,6 +29,7 @@ gsdd_vctr <- function( end_temp = end_temp, window_width = window_width, pick = pick, + complete = complete, msgs = msgs) if(vld_scalar(gss)) { diff --git a/R/gss-vctr.R b/R/gss-vctr.R index c1162d7..8d27b25 100644 --- a/R/gss-vctr.R +++ b/R/gss-vctr.R @@ -6,6 +6,7 @@ gss_vctr <- function( end_temp = 4, window_width = 7, pick = "all", + complete = FALSE, msgs = TRUE, .rollmean = FALSE) { gss <- .gss_vctr( @@ -16,6 +17,7 @@ gss_vctr <- function( end_temp = end_temp, window_width = window_width, pick = pick, + complete = complete, msgs = msgs, .rollmean = .rollmean) diff --git a/R/internal.R b/R/internal.R index 8a3bfb4..8f67ac3 100644 --- a/R/internal.R +++ b/R/internal.R @@ -5,6 +5,7 @@ end_temp, window_width, pick, + complete, msgs, .rollmean = FALSE) { chk_numeric(x) @@ -32,7 +33,7 @@ chk_subset( pick, c("biggest", "smallest", "longest", "shortest", "first", "last", "all")) - + chk_flag(complete) chk_flag(msgs) chk_flag(.rollmean) @@ -43,6 +44,8 @@ return(NA_real_) } run <- longest_run(x) + complete_start <- complete & run[1] == 1L + complete_end <- complete & run[length(run)] == length(x) x <- x[run] length_x <- length(x) if(length_x < min_length || anyNA(x)) { @@ -68,7 +71,7 @@ return(0) } # if season starts on first day, ignore_truncation left - if (start_index[1] == 1L) { + if (!complete_start && start_index[1] == 1L) { if (ignore_truncation %in% c("none", "end")) { if (msgs) { msg("The growing season is truncated at the start of the sequence.") @@ -106,8 +109,8 @@ end_index = .data$end_index + (as.integer(window_width) - 1L), ndays = .data$end_index - .data$start_index + 1L, truncation = dplyr::case_when( - start_index == 1L & end_index == length_x & rollmean[length_rollmean] > end_temp ~ "both", - start_index == 1L ~ "start", + !complete_start & start_index == 1L & end_index == length_x & rollmean[length_rollmean] > end_temp ~ "both", + !complete_start & start_index == 1L ~ "start", end_index == length_x & rollmean[length_rollmean] > end_temp ~ "end", TRUE ~ "none") ) |> diff --git a/R/params.R b/R/params.R index a268c23..2758765 100644 --- a/R/params.R +++ b/R/params.R @@ -1,6 +1,11 @@ #' Parameters for functions #' #' Descriptions of the parameters for functions +#' @param complete A flag specifying whether the vector of water temperatures +#' represents the complete possible growing period (by default FALSE). +#' If TRUE a growing season is not considered to be truncated +#' at the start and/or end if the water temperature is above the threshold +#' at the start and/or ends. #' @param end_date A Date scalar of the last date #' within each year to consider (the year is ignored). #' @param end_temp A positive real number of the average water temperature diff --git a/man/gsdd_vctr.Rd b/man/gsdd_vctr.Rd index f19ce2a..0d3081d 100644 --- a/man/gsdd_vctr.Rd +++ b/man/gsdd_vctr.Rd @@ -12,6 +12,7 @@ gsdd_vctr( end_temp = 4, window_width = 7, pick = "all", + complete = FALSE, msgs = TRUE ) } @@ -46,6 +47,12 @@ width of the rolling mean window in days. By default 7.} "biggest" or "smallest" GSDD. By default the returned value is the the GSDD value for the "longest" 'season'.} +\item{complete}{A flag specifying whether the vector of water temperatures +represents the complete possible growing period (by default FALSE). +If TRUE a growing season is not considered to be truncated +at the start and/or end if the water temperature is above the threshold +at the start and/or ends.} + \item{msgs}{A flag specifying whether to provide messages.} } \value{ diff --git a/man/params.Rd b/man/params.Rd index e8ba6c6..1246054 100644 --- a/man/params.Rd +++ b/man/params.Rd @@ -4,6 +4,12 @@ \alias{params} \title{Parameters for functions} \arguments{ +\item{complete}{A flag specifying whether the vector of water temperatures +represents the complete possible growing period (by default FALSE). +If TRUE a growing season is not considered to be truncated +at the start and/or end if the water temperature is above the threshold +at the start and/or ends.} + \item{end_date}{A Date scalar of the last date within each year to consider (the year is ignored).} diff --git a/tests/testthat/_snaps/gss.md b/tests/testthat/_snaps/gss.md index edd6eee..2ad34dc 100644 --- a/tests/testthat/_snaps/gss.md +++ b/tests/testthat/_snaps/gss.md @@ -306,3 +306,20 @@ 1 2019 1971-06-08 1971-09-29 738. none +# gss above from start to finish + + Code + gss_ignore + Output + # A tibble: 1 x 5 + # Groups: year [1] + year start_dayte end_dayte gsdd truncation + + 1 2019 1971-03-01 1971-11-30 1650 both + Code + gss + Output + # A tibble: 0 x 5 + # i 5 variables: year , start_dayte , end_dayte , gsdd , + # truncation + diff --git a/tests/testthat/test-gss.R b/tests/testthat/test-gss.R index 3dd424e..e85a311 100644 --- a/tests/testthat/test-gss.R +++ b/tests/testthat/test-gss.R @@ -323,3 +323,15 @@ test_that("gss not shift", { gss_plot(data, min_length = 60) }) + +test_that("gss above from start to finish", { + data <- gsdd::temperature_data + data$temperature <- 6 + gss_ignore <- gss(data, ignore_truncation = TRUE) + gss <- gss(data) + expect_snapshot({ + gss_ignore + gss + }) +}) + From 96ff937871050fc6c5b013facc177babd1f5444a Mon Sep 17 00:00:00 2001 From: Joe Thorley Date: Tue, 23 Apr 2024 04:33:57 -0700 Subject: [PATCH 2/3] more refactoring --- R/internal.R | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/R/internal.R b/R/internal.R index 8f67ac3..28f428e 100644 --- a/R/internal.R +++ b/R/internal.R @@ -71,8 +71,8 @@ return(0) } # if season starts on first day, ignore_truncation left - if (!complete_start && start_index[1] == 1L) { - if (ignore_truncation %in% c("none", "end")) { + if (start_index[1] == 1L) { + if (!complete_start && ignore_truncation %in% c("none", "end")) { if (msgs) { msg("The growing season is truncated at the start of the sequence.") } @@ -83,7 +83,7 @@ end_index <- index_begin_run(rollmean < end_temp) # if season doesnt end ignore_truncation right if (!length(end_index) || max(start_index) > max(end_index)) { - if (ignore_truncation %in% c("none", "start")) { + if (!complete_end && ignore_truncation %in% c("none", "start")) { if (msgs) { msg("The growing season is truncated at the end of the sequence.") } @@ -109,9 +109,9 @@ end_index = .data$end_index + (as.integer(window_width) - 1L), ndays = .data$end_index - .data$start_index + 1L, truncation = dplyr::case_when( - !complete_start & start_index == 1L & end_index == length_x & rollmean[length_rollmean] > end_temp ~ "both", - !complete_start & start_index == 1L ~ "start", - end_index == length_x & rollmean[length_rollmean] > end_temp ~ "end", + start_index == 1L & end_index == length_x & rollmean[length_rollmean] > end_temp & !complete_start & !complete_end ~ "both", + start_index == 1L & !complete_start ~ "start", + end_index == length_x & rollmean[length_rollmean] > end_temp & !complete_end ~ "end", TRUE ~ "none") ) |> dplyr::mutate(gsdd = purrr::map2_dbl( From ae04a1161d67f28823f62c4ab0c9e3da1b2f921d Mon Sep 17 00:00:00 2001 From: Joe Thorley Date: Tue, 23 Apr 2024 05:03:40 -0700 Subject: [PATCH 3/3] turn on complete. --- R/internal.R | 11 ++++++- tests/testthat/_snaps/gsdd.md | 2 +- tests/testthat/_snaps/gss-plot/gss_plot8.png | Bin 29782 -> 29771 bytes tests/testthat/_snaps/gss-plot/gss_plot9.png | Bin 30279 -> 30748 bytes tests/testthat/_snaps/gss.md | 30 ++++++++++++----- tests/testthat/test-gsdd.R | 8 +++-- tests/testthat/test-gss.R | 32 ++++++++++++++++--- 7 files changed, 66 insertions(+), 17 deletions(-) diff --git a/R/internal.R b/R/internal.R index 28f428e..48cfa04 100644 --- a/R/internal.R +++ b/R/internal.R @@ -211,6 +211,7 @@ complete_dates <- function(x, start_date, end_date) { end_temp = 4, window_width = window_width, msgs = FALSE, + complete = TRUE, .rollmean = TRUE), .keep = TRUE) if(!nrow(x)) { @@ -268,7 +269,14 @@ complete_dates <- function(x, start_date, end_date) { x <- x |> dplyr::summarise(gsdd = gsdd_vctr( .data$temperature, - ignore_truncation = ignore_truncation, min_length = min_length, start_temp, end_temp = end_temp, window_width = window_width, pick = pick, msgs = msgs), .groups = "keep") |> + ignore_truncation = ignore_truncation, + min_length = min_length, + start_temp = start_temp, + end_temp = end_temp, + window_width = window_width, + pick = pick, + complete = TRUE, + msgs = msgs), .groups = "keep") |> dplyr::ungroup() return(x) @@ -284,6 +292,7 @@ complete_dates <- function(x, start_date, end_date) { end_temp = end_temp, window_width = window_width, pick = pick, + complete = TRUE, msgs = msgs), .keep = TRUE) if(!nrow(x)) { diff --git a/tests/testthat/_snaps/gsdd.md b/tests/testthat/_snaps/gsdd.md index b051505..99a10a4 100644 --- a/tests/testthat/_snaps/gsdd.md +++ b/tests/testthat/_snaps/gsdd.md @@ -36,7 +36,7 @@ # A tibble: 1 x 2 year gsdd - 1 2019 545. + 1 2019 529. # gsdd ignore truncation tiny window diff --git a/tests/testthat/_snaps/gss-plot/gss_plot8.png b/tests/testthat/_snaps/gss-plot/gss_plot8.png index 695dac1b68df2f384536e3b43766e71320a49788..36d384ca60a1596374ac059a53d31e3b1e280dc9 100644 GIT binary patch literal 29771 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 literal 29782 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 E0y?S{@c;k- diff --git a/tests/testthat/_snaps/gss-plot/gss_plot9.png b/tests/testthat/_snaps/gss-plot/gss_plot9.png index bf1691e7f352fe096d6fde667fd5b5abf7bcff41..98a57f3af126af9582a725dbac64338359665b95 100644 GIT binary patch delta 29801 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 delta 29350 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 Mc@4R08LN>00b%O&BLDyZ diff --git a/tests/testthat/_snaps/gss.md b/tests/testthat/_snaps/gss.md index 2ad34dc..c6aba58 100644 --- a/tests/testthat/_snaps/gss.md +++ b/tests/testthat/_snaps/gss.md @@ -62,7 +62,7 @@ # Groups: year [1] year start_dayte end_dayte gsdd truncation - 1 2019 1971-03-20 1971-11-07 3899. start + 1 2019 1971-03-20 1971-11-07 3899. none # gss preserves if shift before leap year @@ -104,6 +104,17 @@ # i 5 variables: year , start_dayte , end_dayte , gsdd , # truncation +# gss works shortened truncated + + Code + gss + Output + # A tibble: 1 x 5 + # Groups: year [1] + year start_dayte end_dayte gsdd truncation + + 1 2019 1971-03-20 1971-09-28 3580. end + # gss NA if stops before Code @@ -257,7 +268,7 @@ # Groups: year [1] year start_dayte end_dayte gsdd truncation - 1 2019 1971-03-01 1971-06-04 742 start + 1 2019 1971-03-02 1971-06-04 736 start 2 2019 1971-07-15 1971-09-03 800 none # gss truncation end @@ -270,7 +281,7 @@ year start_dayte end_dayte gsdd truncation 1 2019 1971-04-08 1971-06-04 500 none - 2 2019 1971-07-15 1971-11-30 1255 end + 2 2019 1971-07-15 1971-11-29 1250 end # gss truncation both ends @@ -281,8 +292,8 @@ # Groups: year [1] year start_dayte end_dayte gsdd truncation - 1 2019 1971-03-01 1971-06-04 742 start - 2 2019 1971-07-15 1971-11-30 1255 end + 1 2019 1971-03-02 1971-06-04 736 start + 2 2019 1971-07-15 1971-11-29 1250 end # gss truncation all @@ -293,7 +304,7 @@ # Groups: year [1] year start_dayte end_dayte gsdd truncation - 1 2019 1971-03-01 1971-11-30 1650 both + 1 2019 1971-03-02 1971-11-29 1638 both # gss not shift @@ -309,13 +320,16 @@ # gss above from start to finish Code - gss_ignore + gss Output # A tibble: 1 x 5 # Groups: year [1] year start_dayte end_dayte gsdd truncation - 1 2019 1971-03-01 1971-11-30 1650 both + 1 2019 1971-03-01 1971-11-30 1650 none + +# gss truncated if missing + Code gss Output diff --git a/tests/testthat/test-gsdd.R b/tests/testthat/test-gsdd.R index 8d53253..767c909 100644 --- a/tests/testthat/test-gsdd.R +++ b/tests/testthat/test-gsdd.R @@ -22,7 +22,9 @@ test_that("gsdd NA if earlier truncation", { }) test_that("gsdd NA if truncated", { - gsdd <- gsdd(temperature_data, start_date = as.Date("1972-05-01"), end_date = as.Date("1972-05-30"), + data <- temperature_data + data <- data[data$date >= as.Date("2019-05-02"),] + gsdd <- gsdd(data, start_date = as.Date("1972-05-01"), end_date = as.Date("1972-05-30"), msgs = FALSE) expect_snapshot({ gsdd @@ -30,7 +32,9 @@ test_that("gsdd NA if truncated", { }) test_that("gsdd ignore truncation", { - gsdd <- gsdd(temperature_data, start_date = as.Date("1972-05-01"), end_date = as.Date("1972-05-30"), + data <- temperature_data + data <- data[data$date >= as.Date("2019-05-02"),] + gsdd <- gsdd(data, start_date = as.Date("1972-05-01"), end_date = as.Date("1972-05-30"), msgs = FALSE, ignore_truncation = TRUE) expect_snapshot({ gsdd diff --git a/tests/testthat/test-gss.R b/tests/testthat/test-gss.R index e85a311..9dee729 100644 --- a/tests/testthat/test-gss.R +++ b/tests/testthat/test-gss.R @@ -73,13 +73,24 @@ test_that("gss works", { }) test_that("gss works shortened", { - expect_message(gss <- gss(temperature_data, min_length = 100, end_date = as.Date("1972-09-29")), + data <- temperature_data + data <- data[data$date <= as.Date("2019-09-28"),] + expect_message(gss <- gss(data, min_length = 100, end_date = as.Date("1972-09-29")), "The growing season is truncated at the end of the sequence.") expect_snapshot({ gss }) }) +test_that("gss works shortened truncated", { + data <- temperature_data + data <- data[data$date <= as.Date("2019-09-28"),] + gss <- gss(data, min_length = 100, end_date = as.Date("1972-09-29"), ignore_truncation = "end") + expect_snapshot({ + gss + }) +}) + test_that("gss NA if stops before", { data <- temperature_data data <- data[data$date < as.Date("2019-09-30"),] @@ -200,6 +211,7 @@ test_that("gss truncation start", { data <- gsdd::temperature_data data$temperature <- data$temperature2 data$temperature[data$date <= as.Date("2019-04-11")] <- 6 + data <- data[data$date >= as.Date("2019-03-02"),] gss <- gss(data, ignore_truncation =TRUE) expect_snapshot({ gss @@ -210,6 +222,7 @@ test_that("gss truncation end", { data <- gsdd::temperature_data data$temperature <- data$temperature2 data$temperature[data$date >= as.Date("2019-08-28")] <- 5 + data <- data[data$date <= as.Date("2019-11-29"),] gss <- gss(data, ignore_truncation =TRUE) expect_snapshot({ gss @@ -221,7 +234,8 @@ test_that("gss truncation both ends", { data$temperature <- data$temperature2 data$temperature[data$date <= as.Date("2019-04-11")] <- 6 data$temperature[data$date >= as.Date("2019-08-28")] <- 5 - gss <- gss(data, ignore_truncation =TRUE) + data <- data[data$date >= as.Date("2019-03-02") & data$date <= as.Date("2019-11-29"),] + gss <- gss(data, min_length = 100, ignore_truncation =TRUE) expect_snapshot({ gss }) @@ -231,7 +245,8 @@ test_that("gss truncation all", { data <- gsdd::temperature_data data$temperature <- data$temperature2 data$temperature <- 6 - gss <- gss(data, ignore_truncation =TRUE) + data <- data[data$date >= as.Date("2019-03-02") & data$date <= as.Date("2019-11-29"),] + gss <- gss(data, min_length = 100, ignore_truncation =TRUE) expect_snapshot({ gss }) @@ -327,11 +342,18 @@ test_that("gss not shift", { test_that("gss above from start to finish", { data <- gsdd::temperature_data data$temperature <- 6 - gss_ignore <- gss(data, ignore_truncation = TRUE) gss <- gss(data) expect_snapshot({ - gss_ignore gss }) }) +test_that("gss truncated if missing", { + data <- gsdd::temperature_data + data <- data[data$date >= as.Date("2019-03-02"),] + data$temperature <- 6 + expect_message(gss <- gss(data), "The growing season is truncated at the start of the sequence.") + expect_snapshot({ + gss + }) +})