diff --git a/DESCRIPTION b/DESCRIPTION index 06ae2e6..97c977e 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -11,11 +11,10 @@ Description: Process and summarize DAS data files. and includes a PDF with the DAS data format requirements expected by the package. URL: https://swfsc.github.io/swfscDAS/, https://github.com/swfsc/swfscDAS/ BugReports: https://github.com/swfsc/swfscDAS/issues/ -Depends: R (>= 4.0.0) +Depends: R (>= 4.1) Imports: dplyr (>= 1.1.0), lubridate, - magrittr, methods, parallel, purrr, diff --git a/NAMESPACE b/NAMESPACE index 0b65ac8..fe19f55 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -88,7 +88,6 @@ importFrom(lubridate,day) importFrom(lubridate,month) importFrom(lubridate,tz) importFrom(lubridate,year) -importFrom(magrittr,"%>%") importFrom(methods,setOldClass) importFrom(parallel,clusterExport) importFrom(parallel,detectCores) diff --git a/NEWS.md b/NEWS.md index 65f38a1..9d3cdc9 100644 --- a/NEWS.md +++ b/NEWS.md @@ -18,6 +18,8 @@ * Added the SpCodes.dat file (from [`CruzPlot`](https://github.com/SWFSC/CruzPlot)) to 'inst' to have available as a default +* Changed to using R native pip, and updated package dependency to require R >= 4.1 + # swfscDAS 0.6.4 diff --git a/R/das_check.R b/R/das_check.R index 6d2b1d6..912a495 100644 --- a/R/das_check.R +++ b/R/das_check.R @@ -133,7 +133,7 @@ das_check <- function( x.lines <- substr(do.call(c, x.lines.list), 4, 39) message("Processing DAS file") - x.proc <- suppressWarnings(das_process(x)) %>% + x.proc <- suppressWarnings(das_process(x)) |> left_join(select(x, "file_das", "line_num", "idx"), by = c('file_das', "line_num")) x.proc <- as_das_df(x.proc) @@ -188,7 +188,7 @@ das_check <- function( ### Check lat/lon coordinates - NA events are ignored - # x.proc.ll <- x.proc %>% filter(!(Event %in% c("?", 1:8))) + # x.proc.ll <- x.proc |> filter(!(Event %in% c("?", 1:8))) lat.which <- which(!between(x.proc$Lat, -90, 90)) lon.which <- which(!between(x.proc$Lat, -180, 1800)) @@ -242,23 +242,23 @@ das_check <- function( } # Create data frame with prev_columns - x.proc.prev <- x.proc %>% + x.proc.prev <- x.proc |> mutate(Event_prev = lag(.data$Event), OnEffort_prev = lag(.data$OnEffort)) # 2) All R events occur while off effort, or after a B event that occurs while off effort - br.r.which <- x.proc.prev %>% + br.r.which <- x.proc.prev |> filter((.data$Event == "R" & .data$OnEffort_prev & .data$Event_prev != "B") | - (.data$Event == "B" & .data$OnEffort_prev)) %>% - select("idx") %>% - unlist() %>% + (.data$Event == "B" & .data$OnEffort_prev)) |> + select("idx") |> + unlist() |> unname() # 3) All E events occur while on effort - e.which <- x.proc.prev %>% - filter(.data$Event == "E" & !.data$OnEffort_prev) %>% - select("idx") %>% - unlist() %>% + e.which <- x.proc.prev |> + filter(.data$Event == "E" & !.data$OnEffort_prev) |> + select("idx") |> + unlist() |> unname() @@ -293,11 +293,11 @@ das_check <- function( Extra_data = substr(x.lines, 100, max(nchar(x.lines))), idx = seq_along(x.lines), stringsAsFactors = FALSE - ) %>% - filter(!(.data$Event %in% c("C", "*", "#"))) %>% + ) |> + filter(!(.data$Event %in% c("C", "*", "#"))) |> mutate(Extra_data = trimws(.data$Extra_data, which = "both")) - x.tmp.filt.data <- x.tmp.filt %>% select(starts_with("Data")) + x.tmp.filt.data <- x.tmp.filt |> select(starts_with("Data")) x.tmp.which <- lapply(1:ncol(x.tmp.filt.data), function(i) { x1 <- trimws(x.tmp.filt.data[[i]], which = "left") diff --git a/R/das_chop_condition.R b/R/das_chop_condition.R index 9a94042..b129ce3 100644 --- a/R/das_chop_condition.R +++ b/R/das_chop_condition.R @@ -179,9 +179,9 @@ das_chop_condition.das_df <- function(x, conditions, seg.min.km = 0.1, segdata <- data.frame( do.call(rbind, lapply(eff.chop.list, function(i) i[["das.df.segdata"]])), stringsAsFactors = FALSE - ) %>% + ) |> mutate(segnum = seq_along(.data$seg_idx), - dist = round(.data$dist, 4)) %>% + dist = round(.data$dist, 4)) |> select("segnum", "seg_idx", everything()) ### Segment lengths @@ -191,8 +191,8 @@ das_chop_condition.das_df <- function(x, conditions, seg.min.km = 0.1, x.eff <- data.frame( do.call(rbind, lapply(eff.chop.list, function(i) i[["das.df"]])), stringsAsFactors = FALSE - ) %>% - left_join(segdata[, c("seg_idx", "segnum")], by = "seg_idx") %>% + ) |> + left_join(segdata[, c("seg_idx", "segnum")], by = "seg_idx") |> select(-"dist_to_next") ### Message about segments that were combined @@ -261,11 +261,11 @@ das_chop_condition.das_df <- function(x, conditions, seg.min.km = 0.1, # even if the last segment is < seg.min.km. # Because of indexing method, the last break point will still be # removed to join the final two segments if necessary - d.pre <- das.df %>% - group_by(.data$effort_seg_pre) %>% + d.pre <- das.df |> + group_by(.data$effort_seg_pre) |> summarise(idx_start = min(.data$idx), idx_end = max(.data$idx), - dist_length = sum(.data$dist_to_next)) %>% + dist_length = sum(.data$dist_to_next)) |> slice(-n()) # == 0 check is here in case seg.min.km is 0 @@ -283,15 +283,15 @@ das_chop_condition.das_df <- function(x, conditions, seg.min.km = 0.1, effort.seg <- rep(FALSE, nrow(das.df)) effort.seg[cond.idx] <- TRUE - das.df <- das.df %>% - select(-c("effort_seg_pre", "idx")) %>% + das.df <- das.df |> + select(-c("effort_seg_pre", "idx")) |> mutate(seg_idx = paste(i, cumsum(effort.seg), sep = "_")) #------------------------------------------------------ ### Calculate lengths of effort segments - das.df.dist.summ <- das.df %>% - group_by(.data$seg_idx) %>% + das.df.dist.summ <- das.df |> + group_by(.data$seg_idx) |> summarise(sum_dist = sum(.data$dist_to_next)) seg.lengths <- das.df.dist.summ$sum_dist diff --git a/R/das_chop_equallength.R b/R/das_chop_equallength.R index 482c74c..4ed666b 100644 --- a/R/das_chop_equallength.R +++ b/R/das_chop_equallength.R @@ -251,16 +251,16 @@ das_chop_equallength.das_df <- function(x, segdata <- data.frame( do.call(rbind, lapply(eff.chop.list, function(i) i[["das.df.segdata"]])), stringsAsFactors = FALSE - ) %>% + ) |> mutate(segnum = seq_along(.data$file), - dist = round(.data$dist, 4)) %>% + dist = round(.data$dist, 4)) |> select("segnum", everything()) ### Each das data point, along with segnum x.eff <- data.frame( do.call(rbind, lapply(eff.chop.list, function(i) i[["das.df"]])), stringsAsFactors = FALSE - ) %>% + ) |> left_join(segdata[, c("seg_idx", "segnum")], by = "seg_idx") ### Message about segments with length 0 diff --git a/R/das_chop_section.R b/R/das_chop_section.R index 5ed889f..b123989 100644 --- a/R/das_chop_section.R +++ b/R/das_chop_section.R @@ -80,15 +80,15 @@ das_chop_section.das_df <- function(x, conditions, distance.method = NULL, randpicks = NA ) - x.summ <- x %>% + x.summ <- x |> mutate(ces_dup = duplicated(.data$cont_eff_section), - dist_from_prev_sect = ifelse(.data$ces_dup, .data$dist_from_prev, NA)) %>% - group_by(.data$cont_eff_section) %>% + dist_from_prev_sect = ifelse(.data$ces_dup, .data$dist_from_prev, NA)) |> + group_by(.data$cont_eff_section) |> summarise(dist_sum = sum(.data$dist_from_prev_sect, na.rm = TRUE)) # Call das_chop_equallength using max section length + 1 das_chop_equallength( - x %>% select(-"cont_eff_section"), + x |> select(-"cont_eff_section"), conditions = conditions, seg.km = max(x.summ$dist_sum) + 1, randpicks.load = randpicks.df, num.cores = num.cores diff --git a/R/das_comments.R b/R/das_comments.R index 393fd76..1b2fa45 100644 --- a/R/das_comments.R +++ b/R/das_comments.R @@ -59,5 +59,5 @@ das_comments.das_dfr <- function(x) { paste(na.omit(i), collapse = "") }) - x.c %>% mutate(comment_str = unname(x.c.c)) + x.c |> mutate(comment_str = unname(x.c.c)) } diff --git a/R/das_effort.R b/R/das_effort.R index a384a63..c67fc44 100644 --- a/R/das_effort.R +++ b/R/das_effort.R @@ -209,7 +209,7 @@ das_effort.das_df <- function( # Prep for chop functions # Remove comments if specified - if (is.null(event.touse) & comment.drop) x <- x %>% filter(.data$Event != "C") + if (is.null(event.touse) & comment.drop) x <- x |> filter(.data$Event != "C") # Add index column for adding back in ? and 1:8 events, and extract those events x$idx_eff <- seq_len(nrow(x)) @@ -230,9 +230,9 @@ das_effort.das_df <- function( x.oneff.all <- x[x.oneff.which, ] - x.oneff <- x.oneff.all %>% filter(!(.data$Event %in% event.tmp) ) - x.oneff.tmp <- x.oneff.all %>% - filter(.data$Event %in% event.tmp) %>% + x.oneff <- x.oneff.all |> filter(!(.data$Event %in% event.tmp) ) + x.oneff.tmp <- x.oneff.all |> + filter(.data$Event %in% event.tmp) |> mutate(cont_eff_section = NA, dist_from_prev = NA, seg_idx = NA, segnum = NA) rownames(x.oneff) <- rownames(x.oneff.tmp) <- NULL @@ -248,12 +248,12 @@ das_effort.das_df <- function( stop("Error in row numbers - please report this as an issue") # Filter for specified events, if applicable - if (!is.null(event.touse)) x.oneff <- x.oneff %>% filter(.data$Event %in% event.touse) + if (!is.null(event.touse)) x.oneff <- x.oneff |> filter(.data$Event %in% event.touse) # Verbosely remove remaining data without Lat/Lon/DateTime info if (any(is.na(x.oneff$Lat) | is.na(x.oneff$Lon) | is.na(x.oneff$DateTime))) { - x.nacheck <- x.oneff %>% + x.nacheck <- x.oneff |> mutate(ll_dt_na = is.na(.data$Lat) | is.na(.data$Lon) | is.na(.data$DateTime), eff_na = .data$ll_dt_na & (.data$Event %in% c("R", "E")), sight_na = .data$ll_dt_na & (.data$Event %in% c("S", "K", "M", "G", "t", "A"))) @@ -273,7 +273,7 @@ das_effort.das_df <- function( .print_file_line(x.nacheck$file_das, x.nacheck$line_num, which(x.nacheck$sight_na))) # Remove events with NA lat/lon/dt info - x.oneff <- x.oneff %>% filter(!is.na(.data$Lat) & !is.na(.data$Lon) & !is.na(.data$DateTime)) + x.oneff <- x.oneff |> filter(!is.na(.data$Lat) & !is.na(.data$Lon) & !is.na(.data$DateTime)) message(paste0("There were ", sum(x.nacheck$ll_dt_na), " on effort ", ifelse(comment.drop, "(non-C) ", ""), "events ", "with NA Lat/Lon/DateTime values that will ignored ", @@ -309,17 +309,17 @@ das_effort.das_df <- function( # If specified, verbosely remove cont eff sections with length <=0.1, # and no sighting events if (seg0.drop) { - x.ces.summ <- x.oneff %>% - group_by(.data$cont_eff_section) %>% + x.ces.summ <- x.oneff |> + group_by(.data$cont_eff_section) |> summarise(dist_sum = sum(.data$dist_from_prev[-1]), has_sight = any(c("S", "K", "M", "G", "t") %in% .data$Event), line_min = min(.data$line_num)) - ces.keep <- x.ces.summ %>% - filter(.data$has_sight | .data$dist_sum > 0.1) %>% + ces.keep <- x.ces.summ |> + filter(.data$has_sight | .data$dist_sum > 0.1) |> pull(cont_eff_section) - x.oneff <- x.oneff %>% + x.oneff <- x.oneff |> filter(.data$cont_eff_section %in% ces.keep) # Recalculate cont eff section index @@ -359,17 +359,17 @@ das_effort.das_df <- function( # Add strata info to segdata as needed - easiest to do this here if (!is.null(strata.files)) { - x.strata.summ <- x.eff %>% - group_by(.data$segnum) %>% + x.strata.summ <- x.eff |> + group_by(.data$segnum) |> summarise(strata_which = unique(.data$strata_which), stratum = ifelse(.data$strata_which == 0, NA, - names(strata.files)[.data$strata_which])) %>% + names(strata.files)[.data$strata_which])) |> select("segnum", "stratum") if (nrow(x.strata.summ) != nrow(segdata)) stop("Error processing strata and segdata - please report this as an issue") - segdata <- segdata %>% left_join(x.strata.summ, by = "segnum") - x.eff <- x.eff %>% select(-!!c(names(strata.files), "strata_which")) + segdata <- segdata |> left_join(x.strata.summ, by = "segnum") + x.eff <- x.eff |> select(-!!c(names(strata.files), "strata_which")) } # Check that things are as expected @@ -388,33 +388,33 @@ das_effort.das_df <- function( # Only for sightinfo groupsizes, and thus no segdata info doesn't matter if (nrow(x.oneff.tmp) > 0) x.eff <- bind_rows(x.eff, x.oneff.tmp) - x.eff.all <- x.eff %>% - arrange(.data$idx_eff) %>% + x.eff.all <- x.eff |> + arrange(.data$idx_eff) |> select(-"idx_eff") #---------------------------------------------------------------------------- #---------------------------------------------------------------------------- # Summarize sightings - sightinfo <- x.eff.all %>% + sightinfo <- x.eff.all |> left_join(select(segdata, "segnum", "mlat", "mlon"), - by = "segnum") %>% - das_sight(returnformat = "default") %>% + by = "segnum") |> + das_sight(returnformat = "default") |> mutate(included = (.data$Bft <= 5 & .data$OnEffort & .data$ObsStd), - included = ifelse(is.na(.data$included), FALSE, .data$included)) %>% + included = ifelse(is.na(.data$included), FALSE, .data$included)) |> select(-c("dist_from_prev", "cont_eff_section")) # Clean and return - segdata <- segdata %>% select(-"seg_idx") + segdata <- segdata |> select(-"seg_idx") # If seg0.drop, then change '0' distances to 0.1 if (seg0.drop) { - segdata <- segdata %>% + segdata <- segdata |> mutate(dist = if_else(dist < 0.1, 0.1, dist)) } - sightinfo <- sightinfo %>% - mutate(year = year(.data$DateTime)) %>% - select(-"seg_idx") %>% + sightinfo <- sightinfo |> + mutate(year = year(.data$DateTime)) |> + select(-"seg_idx") |> select("segnum", "mlat", "mlon", "Event", "DateTime", "year", everything()) list(segdata = segdata, sightinfo = sightinfo, randpicks = randpicks) diff --git a/R/das_effort_sight.R b/R/das_effort_sight.R index 86537e5..5d411b9 100644 --- a/R/das_effort_sight.R +++ b/R/das_effort_sight.R @@ -70,7 +70,7 @@ das_effort_sight <- function(x.list, sp.codes, sp.events = c("S", "G", "K", "M", ### Prep segdata <- x.list$segdata - sightinfo <- x.list$sightinfo %>% filter(.data$Event %in% sp.events) + sightinfo <- x.list$sightinfo |> filter(.data$Event %in% sp.events) randpicks <- x.list$randpicks ### Processing @@ -92,15 +92,15 @@ das_effort_sight <- function(x.list, sp.codes, sp.events = c("S", "G", "K", "M", segdata.col1 <- select(segdata, "seg_idx") sightinfo.forsegdata.list <- lapply(sp.codes, function(i, sightinfo, d1) { - d0 <- sightinfo %>% - filter(.data$included, .data$SpCode == i) %>% - group_by(.data$seg_idx) %>% + d0 <- sightinfo |> + filter(.data$included, .data$SpCode == i) |> + group_by(.data$seg_idx) |> summarise(nSI = n(), ANI = sum(.data$GsSegment)) names(d0) <- c("seg_idx", paste(names(d0)[-1], i, sep = "_")) - z <- full_join(d1, d0, by = "seg_idx") %>% select(-"seg_idx") + z <- full_join(d1, d0, by = "seg_idx") |> select(-"seg_idx") z[is.na(z)] <- 0 z @@ -110,12 +110,12 @@ das_effort_sight <- function(x.list, sp.codes, sp.events = c("S", "G", "K", "M", ### Clean up and return - segdata <- segdata %>% - left_join(sightinfo.forsegdata.df, by = "seg_idx") %>% + segdata <- segdata |> + left_join(sightinfo.forsegdata.df, by = "seg_idx") |> select(-"seg_idx") - sightinfo <- sightinfo %>% - mutate(included = ifelse(.data$SpCode %in% sp.codes, .data$included, FALSE)) %>% + sightinfo <- sightinfo |> + mutate(included = ifelse(.data$SpCode %in% sp.codes, .data$included, FALSE)) |> select(-c("seg_idx", "GsSegment")) list(segdata = segdata, sightinfo = sightinfo, randpicks = randpicks) diff --git a/R/das_effort_strata.R b/R/das_effort_strata.R index 9ab606a..58bfe68 100644 --- a/R/das_effort_strata.R +++ b/R/das_effort_strata.R @@ -69,9 +69,9 @@ das_effort_strata.das_df <- function(x, strata.files, ...) { strata.list.lines <- lapply(strata.list.poly, st_cast, "LINESTRING") pts.toadd <- lapply(rev(strata.new.todo), function(i, das.df, strata.list.lines) { - das.df.curr <- das.df %>% slice(i-1, i) - pts.sf <- das.df.curr %>% - mutate(Lon_sf = .data$Lon, Lat_sf = .data$Lat) %>% + das.df.curr <- das.df |> slice(i-1, i) + pts.sf <- das.df.curr |> + mutate(Lon_sf = .data$Lon, Lat_sf = .data$Lat) |> st_as_sf(coords = c("Lon_sf", "Lat_sf"), crs = 4326, agr = "constant") # Convert both effort and strata poly to lines @@ -90,19 +90,19 @@ das_effort_strata.das_df <- function(x, strata.files, ...) { # 'New' point will have same data as i-1 b/c we haven't made it to i yet idx.eff <- das.df.curr$idx_eff[1] df.out2 <- bind_cols( - das.df.curr %>% select("Event":"line_num") %>% slice(1), - das.df.curr %>% select("idx_eff":"strata_which") %>% slice(2) + das.df.curr |> select("Event":"line_num") |> slice(1), + das.df.curr |> select("idx_eff":"strata_which") |> slice(2) ) - das.df.curr %>% - slice(1) %>% - bind_rows(df.out2) %>% + das.df.curr |> + slice(1) |> + bind_rows(df.out2) |> mutate(Event = c("strataE", "strataR"), Lon = das.poly.coords[1], Lat = das.poly.coords[2], idx_eff = c(idx.eff+0.4, idx.eff+0.5)) }, das.df = x.strata, strata.list.lines = strata.list.lines) for (i.idx in seq_along(pts.toadd)) { - x.strata <- x.strata %>% + x.strata <- x.strata |> add_row(pts.toadd[[i.idx]], .before = rev(strata.new.todo)[i.idx]) } diff --git a/R/das_intersects_strata.R b/R/das_intersects_strata.R index 00e16b6..011edf3 100644 --- a/R/das_intersects_strata.R +++ b/R/das_intersects_strata.R @@ -92,7 +92,7 @@ das_intersects_strata.list <- function(x, strata.files, ...) { x1 <- das_intersects_strata(x$segdata, strata.files, "mlon", "mlat") names.new <- base::setdiff(names(x1), names(x$segdata)) - x1.tojoin <- x1 %>% select("segnum", !!names.new) + x1.tojoin <- x1 |> select("segnum", !!names.new) x2 <- left_join(x$sightinfo, x1.tojoin, by = "segnum") # x2 <- das_intersects_strata(x$sightinfo, strata.files, "mlat", "mlon") diff --git a/R/das_process.R b/R/das_process.R index ae11bcf..3dafbb3 100644 --- a/R/das_process.R +++ b/R/das_process.R @@ -251,22 +251,22 @@ das_process.das_dfr <- function(x, days.gap = 20, reset.event = TRUE, #---------------------------------------------------------------------------- ### Extract GMT Offsets for dates + cruise numbers - x.offset <- x %>% - filter(.data$Event == "B") %>% + x.offset <- x |> + filter(.data$Event == "B") |> mutate(Date = as.Date(.data$DateTime, tz = ""), Cruise = as.numeric(.data$Data1), - OffsetGMT = as.integer(.data$Data3)) %>% - select("Date", "Cruise", "OffsetGMT") %>% + OffsetGMT = as.integer(.data$Data3)) |> + select("Date", "Cruise", "OffsetGMT") |> distinct() - x.offset.summ <- x.offset %>% - group_by(.data$Date, .data$Cruise) %>% + x.offset.summ <- x.offset |> + group_by(.data$Date, .data$Cruise) |> summarise(offsetgmt_uq = n_distinct(.data$OffsetGMT)) if (any(x.offset.summ$offsetgmt_uq != 1)) { - x.offset.mult <- x.offset.summ %>% filter(.data$offsetgmt_uq > 1) + x.offset.mult <- x.offset.summ |> filter(.data$offsetgmt_uq > 1) warning("The following dates + cruise numbers have multiple OffsetGMT ", "values (Field 3 of B events), and thus the OffsetGMT column ", "will contain only NAs in the output data frame:\n", @@ -429,19 +429,19 @@ das_process.das_dfr <- function(x, days.gap = 20, reset.event = TRUE, event.tmp <- c("?", 1:8) x$a_idx <- cumsum(x$Event == "A") x$idx <- seq_along(x$Event) - x.key <- x %>% - filter(.data$Event == "A") %>% + x.key <- x |> + filter(.data$Event == "A") |> select("a_idx", "DateTime", "Lat", "Lon") - x.tmp <- x %>% - filter(.data$Event %in% event.tmp) %>% - select(-c("DateTime", "Lat", "Lon")) %>% - left_join(x.key, by = "a_idx") %>% + x.tmp <- x |> + filter(.data$Event %in% event.tmp) |> + select(-c("DateTime", "Lat", "Lon")) |> + left_join(x.key, by = "a_idx") |> select(!!names(x)) - x <- x %>% - filter(!(.data$Event %in% event.tmp)) %>% - bind_rows(x.tmp) %>% - arrange(.data$idx) %>% + x <- x |> + filter(!(.data$Event %in% event.tmp)) |> + bind_rows(x.tmp) |> + arrange(.data$idx) |> select(-c("idx", "a_idx")) rm(x.key, x.tmp) } @@ -458,10 +458,10 @@ das_process.das_dfr <- function(x, days.gap = 20, reset.event = TRUE, paste0("Data", 1:12), "EffortDot", "EventNum", "file_das", "line_num" ) - data.frame(x, tmp, stringsAsFactors = FALSE) %>% - mutate(Date = as.Date(.data$DateTime, tz = "")) %>% - left_join(x.offset, by = c("Cruise", "Date")) %>% - select(!!cols.tokeep) %>% + data.frame(x, tmp, stringsAsFactors = FALSE) |> + mutate(Date = as.Date(.data$DateTime, tz = "")) |> + left_join(x.offset, by = c("Cruise", "Date")) |> + select(!!cols.tokeep) |> as_das_df() } diff --git a/R/das_segdata.R b/R/das_segdata.R index a3a73ca..0454ba2 100644 --- a/R/das_segdata.R +++ b/R/das_segdata.R @@ -112,9 +112,9 @@ das_segdata.das_df <- function(x, conditions, segdata.method = c("avg", "maxdist "continuous effort section ", section.id, ":\n", paste(df.out1.cols, collapse = ", ")) - df.out1 <- x %>% - select(!!df.out1.cols) %>% - select(file = "file_das", everything()) %>% + df.out1 <- x |> + select(!!df.out1.cols) |> + select(file = "file_das", everything()) |> slice(n()) #use n() instead of 1 b/c some vars may be NA in first line @@ -125,7 +125,7 @@ das_segdata.das_df <- function(x, conditions, segdata.method = c("avg", "maxdist ) #---------------------------------------------------------------------------- - segdata.all %>% + segdata.all |> select("seg_idx", "section_id", "section_sub_id", "file", "stlin", "endlin", "lat1", "lon1", "DateTime1", "lat2", "lon2", "DateTime2", "mlat", "mlon", "mDateTime", "dist", "year", "month", "day", "mtime", @@ -223,11 +223,11 @@ das_segdata.das_df <- function(x, conditions, segdata.method = c("avg", "maxdist mlat = startpt.curr[1], mlon = startpt.curr[2], mDateTime = mean(c(startdt.curr, enddt.curr)), dist = 0, stringsAsFactors = FALSE - ) %>% + ) |> mutate(mtime = strftime(.data$mDateTime, format = "%H:%M:%S", tz = tz(.data$mDateTime)), year = year(.data$mDateTime), month = month(.data$mDateTime), - day = day(.data$mDateTime)) %>% + day = day(.data$mDateTime)) |> bind_cols(df.out1, conditions.list.df) } else { @@ -326,8 +326,8 @@ das_segdata.das_df <- function(x, conditions, segdata.method = c("avg", "maxdist } else { #.segdata_aggr() throws an error if not character or numeric - tmp <- k.list[[k]] %>% - filter(!is.na(.data$val)) %>% + tmp <- k.list[[k]] |> + filter(!is.na(.data$val)) |> mutate(val_frac = .data$val * .data$dist) if (nrow(tmp) == 0) NA else sum(tmp$val_frac) / sum(tmp$dist) @@ -341,10 +341,10 @@ das_segdata.das_df <- function(x, conditions, segdata.method = c("avg", "maxdist } else if (segdata.method == "maxdist") { conditions.list.df <- data.frame( lapply(names(conditions.list), function(k, k.list) { - tmp <- k.list[[k]] %>% - filter(!is.na(.data$val)) %>% - group_by(.data$val) %>% - summarise(dist_sum = sum(as.numeric(.data$dist))) %>% + tmp <- k.list[[k]] |> + filter(!is.na(.data$val)) |> + group_by(.data$val) |> + summarise(dist_sum = sum(as.numeric(.data$dist))) |> arrange(desc(.data$dist_sum), .data$val) if (nrow(tmp) == 0) NA else tmp$val[1] @@ -373,11 +373,11 @@ das_segdata.das_df <- function(x, conditions, segdata.method = c("avg", "maxdist mlat = midpt.curr[1], mlon = midpt.curr[2], mDateTime = mean(c(startdt.curr, enddt.curr)), dist = seg.lengths[subseg.curr], stringsAsFactors = FALSE - ) %>% + ) |> mutate(mtime = strftime(.data$mDateTime, format = "%H:%M:%S", tz = tz(.data$mDateTime)), year = year(.data$mDateTime), month = month(.data$mDateTime), - day = day(.data$mDateTime)) %>% + day = day(.data$mDateTime)) |> bind_cols(df.out1, conditions.list.df) segdata.all <- rbind(segdata.all, segdata) @@ -426,7 +426,7 @@ das_segdata.das_df <- function(x, conditions, segdata.method = c("avg", "maxdist #-------------------------------------------------------------------------- # Ensure longitudes are between -180 and 180, and return - segdata.all %>% + segdata.all |> mutate(lon1 = ifelse(.greater(.data$lon1, 180), .data$lon1 - 360, .data$lon1), lon1 = ifelse(.less(.data$lon1, -180), .data$lon1 + 360, .data$lon1), lon2 = ifelse(.greater(.data$lon2, 180), .data$lon2 - 360, .data$lon2), diff --git a/R/das_sight.R b/R/das_sight.R index 4037bae..a5eafb5 100644 --- a/R/das_sight.R +++ b/R/das_sight.R @@ -226,8 +226,8 @@ das_sight.das_df <- function(x, return.format = c("default", "wide", "complete") event.sight <- c("S", "K", "M", "G", "s", "k", "m", "g", "t", "p", "F") event.sight.info <- c("A", "?", 1:8) - sight.df <- x %>% - filter(.data$Event %in% c(event.sight, event.sight.info)) %>% + sight.df <- x |> + filter(.data$Event %in% c(event.sight, event.sight.info)) |> mutate(sight_cumsum = cumsum(.data$Event %in% event.sight)) @@ -260,8 +260,8 @@ das_sight.das_df <- function(x, return.format = c("default", "wide", "complete") #-------------------------------------------------------- ### Data that is in all sighting events # SightNo is left as character because of entries such as "408A" - sight.info.all <- sight.df %>% - filter(.data$Event %in% event.sight) %>% + sight.info.all <- sight.df |> + filter(.data$Event %in% event.sight) |> mutate(SightNo = case_when(.data$Event %in% c("S", "K", "M") ~ .data$Data1, .data$Event %in% c("G", "g") ~ .data$Data1, .data$Event %in% c("s", "k", "m") ~ .data$Data1), @@ -298,33 +298,33 @@ das_sight.das_df <- function(x, return.format = c("default", "wide", "complete") .data$Event == "g" ~ .data$Data4, .data$Event == "t" ~ .data$Data4, .data$Event == "p" ~ .data$Data4, - .data$Event == "F" ~ .data$Data3))) %>% - group_by(day(.data$DateTime)) %>% + .data$Event == "F" ~ .data$Data3))) |> + group_by(day(.data$DateTime)) |> mutate(SightNoDaily = paste(base::format(.data$DateTime, "%Y%m%d"), cumsum(.data$Event %in% c("S", "K", "M", "G")), sep = "_"), SightNoDaily = if_else(.data$Event %in% c("S", "K", "M", "G"), - .data$SightNoDaily, NA_character_)) %>% - ungroup() %>% + .data$SightNoDaily, NA_character_)) |> + ungroup() |> select("sight_cumsum", "SightNo", "Subgroup", "SightNoDaily", "Obs", "ObsStd", "Bearing", "Reticle", "DistNm") #-------------------------------------------------------- ### Marine mammal (+subgroup) sightings; Events S, K, M, G - sight.info.skmg1 <- sight.df %>% - filter(.data$Event %in% c("S", "K", "M", "G")) %>% + sight.info.skmg1 <- sight.df |> + filter(.data$Event %in% c("S", "K", "M", "G")) |> mutate(Cue = if_else(.data$Event == "G", NA_real_, as.numeric(.data$Data3)), Method = as.numeric(.data$Data4), CalibSchool = toupper(.data$Data10), PhotosAerial = toupper(.data$Data11), - Biopsy = toupper(.data$Data12)) %>% + Biopsy = toupper(.data$Data12)) |> select("sight_cumsum", "Cue", "Method", "CalibSchool", "PhotosAerial", "Biopsy") # Data from A row - sight.info.skmg2 <- sight.df %>% - filter(.data$Event =="A") %>% + sight.info.skmg2 <- sight.df |> + filter(.data$Event =="A") |> mutate(Photos = toupper(.data$Data3), Birds = toupper(.data$Data4), nSp = unlist( @@ -332,15 +332,15 @@ das_sight.das_df <- function(x, return.format = c("default", "wide", "complete") function(d5, d6, d7, d8) { sum(!is.na(c(d5, d6, d7, d8))) })), - Mixed = .data$nSp > 1) %>% + Mixed = .data$nSp > 1) |> select("sight_cumsum", "Photos", "Birds", "nSp", "Mixed", SpCode1 = "Data5", SpCode2 = "Data6", SpCode3 = "Data7", SpCode4 = "Data8") # Data from ? row, if any - sight.info.skmg3 <- sight.df %>% - filter(.data$Event %in% c("?")) %>% - group_by(.data$sight_cumsum) %>% + sight.info.skmg3 <- sight.df |> + filter(.data$Event %in% c("?")) |> + group_by(.data$sight_cumsum) |> reframe(Prob = TRUE, SpCodeProb1 = .data$Data5, SpCodeProb2 = .data$Data6, SpCodeProb3 = .data$Data7, SpCodeProb4 = .data$Data8) @@ -348,27 +348,27 @@ das_sight.das_df <- function(x, return.format = c("default", "wide", "complete") # Data from numeric events (groupsize and composition estimates) sight.info.skmg4 <- if (return.format == "complete") { - sight.df %>% - filter(.data$Event %in% as.character(1:8)) %>% + sight.df |> + filter(.data$Event %in% as.character(1:8)) |> mutate(SpPerc1 = as.numeric(.data$Data5), SpPerc2 = as.numeric(.data$Data6), SpPerc3 = as.numeric(.data$Data7), SpPerc4 = as.numeric(.data$Data8), GsSchoolBest = as.numeric(.data$Data2), GsSchoolHigh = as.numeric(.data$Data3), - GsSchoolLow = as.numeric(.data$Data4)) %>% + GsSchoolLow = as.numeric(.data$Data4)) |> select("sight_cumsum", ObsEstimate = "Data1", "SpPerc1", "SpPerc2", "SpPerc3", "SpPerc4", "GsSchoolBest", "GsSchoolHigh", "GsSchoolLow") } else { - sight.df %>% - filter(.data$Event %in% as.character(1:8)) %>% + sight.df |> + filter(.data$Event %in% as.character(1:8)) |> mutate(Data2 = as.numeric(.data$Data2), Data3 = as.numeric(.data$Data3), Data4 = as.numeric(.data$Data4), Data5 = as.numeric(.data$Data5), Data6 = as.numeric(.data$Data6), Data7 = as.numeric(.data$Data7), - Data8 = as.numeric(.data$Data8)) %>% - group_by(.data$sight_cumsum) %>% + Data8 = as.numeric(.data$Data8)) |> + group_by(.data$sight_cumsum) |> reframe(ObsEstimate = list(.data$Data1), SpPerc1 = mean_narm(.data$Data5), SpPerc2 = mean_narm(.data$Data6), @@ -413,11 +413,11 @@ das_sight.das_df <- function(x, return.format = c("default", "wide", "complete") sum(duplicated(sight.info.skmg3$sight_cumsum)) == 0 ) - sight.info.skmg <- sight.info.skmg1 %>% - left_join(sight.info.skmg2, by = "sight_cumsum") %>% - left_join(sight.info.skmg3, by = "sight_cumsum") %>% - left_join(sight.info.skmg4, by = "sight_cumsum") %>% - mutate(Prob = ifelse(is.na(.data$Prob), FALSE, .data$Prob)) %>% + sight.info.skmg <- sight.info.skmg1 |> + left_join(sight.info.skmg2, by = "sight_cumsum") |> + left_join(sight.info.skmg3, by = "sight_cumsum") |> + left_join(sight.info.skmg4, by = "sight_cumsum") |> + mutate(Prob = ifelse(is.na(.data$Prob), FALSE, .data$Prob)) |> select("sight_cumsum", "Cue", "Method", "Photos", "Birds", "CalibSchool", "PhotosAerial", "Biopsy", "Prob", "nSp", "Mixed", "ObsEstimate", starts_with("SpCode"), starts_with("SpCodeProb"), @@ -431,40 +431,40 @@ das_sight.das_df <- function(x, return.format = c("default", "wide", "complete") #-------------------------------------------------------- ### Marine mammal (+subgroup) resights; Events s, k, m - sight.info.resight <- sight.df %>% - filter(.data$Event %in% c("s", "k", "m")) %>% - mutate(CourseSchool = as.numeric(.data$Data5)) %>% + sight.info.resight <- sight.df |> + filter(.data$Event %in% c("s", "k", "m")) |> + mutate(CourseSchool = as.numeric(.data$Data5)) |> select("sight_cumsum", "CourseSchool") #-------------------------------------------------------- ### Turtle sightings; Events t - sight.info.t <- sight.df %>% - filter(.data$Event == "t") %>% + sight.info.t <- sight.df |> + filter(.data$Event == "t") |> mutate(TurtleSp = .data$Data2, TurtleGs = as.numeric(.data$Data5), TurtleJFR = .data$Data6, TurtleAge = toupper(.data$Data8), - TurtleCapt = toupper(.data$Data9)) %>% + TurtleCapt = toupper(.data$Data9)) |> select("sight_cumsum", "TurtleSp", "TurtleGs", "TurtleJFR", "TurtleAge", "TurtleCapt") #-------------------------------------------------------- ### Pinnipeds; event p - sight.info.p <- sight.df %>% - filter(.data$Event == "p") %>% + sight.info.p <- sight.df |> + filter(.data$Event == "p") |> mutate(PinnipedSp = .data$Data2, - PinnipedGs = as.numeric(.data$Data5)) %>% + PinnipedGs = as.numeric(.data$Data5)) |> select("sight_cumsum", "PinnipedSp", "PinnipedGs") #-------------------------------------------------------- ### Fishing boats; Events F - sight.info.f <- sight.df %>% - filter(.data$Event == "F") %>% + sight.info.f <- sight.df |> + filter(.data$Event == "F") |> mutate(BoatType = .data$Data5, - BoatGs = as.numeric(.data$Data6)) %>% + BoatGs = as.numeric(.data$Data6)) |> select("sight_cumsum", "BoatType", "BoatGs") @@ -473,16 +473,16 @@ das_sight.das_df <- function(x, return.format = c("default", "wide", "complete") #-------------------------------------------------------- ### Formatting for all options - now done for wide and complete - to.return <- sight.df %>% - filter(.data$Event %in% event.sight) %>% + to.return <- sight.df |> + filter(.data$Event %in% event.sight) |> select(-c("Data1", "Data2", "Data3", "Data4", "Data5", "Data6", - "Data7", "Data8", "Data9", "Data10", "Data11", "Data12")) %>% - left_join(sight.info.all, by = "sight_cumsum") %>% - left_join(sight.info.skmg, by = "sight_cumsum") %>% - left_join(sight.info.resight, by = "sight_cumsum") %>% - left_join(sight.info.t, by = "sight_cumsum") %>% - left_join(sight.info.p, by = "sight_cumsum") %>% - left_join(sight.info.f, by = "sight_cumsum") %>% + "Data7", "Data8", "Data9", "Data10", "Data11", "Data12")) |> + left_join(sight.info.all, by = "sight_cumsum") |> + left_join(sight.info.skmg, by = "sight_cumsum") |> + left_join(sight.info.resight, by = "sight_cumsum") |> + left_join(sight.info.t, by = "sight_cumsum") |> + left_join(sight.info.p, by = "sight_cumsum") |> + left_join(sight.info.f, by = "sight_cumsum") |> select(-"sight_cumsum") @@ -492,9 +492,9 @@ das_sight.das_df <- function(x, return.format = c("default", "wide", "complete") # Split multi-species sightings into multiple rows as necessary to.return$idx <- seq_len(nrow(to.return)) - to.return.multi <- to.return %>% - filter(.data$Event %in% c("S", "K", "M", "G")) %>% - group_by(.data$idx) %>% + to.return.multi <- to.return |> + filter(.data$Event %in% c("S", "K", "M", "G")) |> + group_by(.data$idx) |> summarise(Sp1_list = list(c(.data$SpCode1, .data$SpCodeProb1, .data$GsSpBest1, .data$GsSpHigh1, .data$GsSpLow1)), Sp2_list = list(c(.data$SpCode2, .data$SpCodeProb2, .data$GsSpBest2, @@ -502,17 +502,17 @@ das_sight.das_df <- function(x, return.format = c("default", "wide", "complete") Sp3_list = list(c(.data$SpCode3, .data$SpCodeProb3, .data$GsSpBest3, .data$GsSpHigh3, .data$GsSpLow3)), Sp4_list = list(c(.data$SpCode4, .data$SpCodeProb4, .data$GsSpBest4, - .data$GsSpHigh4, .data$GsSpLow4))) %>% + .data$GsSpHigh4, .data$GsSpLow4))) |> pivot_longer(c("Sp1_list", "Sp2_list", "Sp3_list", "Sp4_list"), names_to = "sp_list_name", values_to = "sp_list", - values_drop_na = TRUE) %>% + values_drop_na = TRUE) |> mutate(SpCode = map_chr(.data$sp_list, function(i) i[1]), SpCodeProb = map_chr(.data$sp_list, function(i) i[2]), GsSpBest = as.numeric(map_chr(.data$sp_list, function(i) i[3])), GsSpHigh = as.numeric(map_chr(.data$sp_list, function(i) i[4])), - GsSpLow = as.numeric(map_chr(.data$sp_list, function(i) i[5]))) %>% - filter(!is.na(.data$SpCode)) %>% - select("idx", "SpCode", "SpCodeProb", "GsSpBest", "GsSpHigh", "GsSpLow") %>% + GsSpLow = as.numeric(map_chr(.data$sp_list, function(i) i[5]))) |> + filter(!is.na(.data$SpCode)) |> + select("idx", "SpCode", "SpCodeProb", "GsSpBest", "GsSpHigh", "GsSpLow") |> arrange(.data$idx) # Names and order of columns to return @@ -528,16 +528,16 @@ das_sight.das_df <- function(x, return.format = c("default", "wide", "complete") ) # Finalize return data frame, consolidating columns as possible - to.return <- to.return %>% + to.return <- to.return |> select(-c("SpCode1", "SpCode2", "SpCode3", "SpCode4", "SpCodeProb1", "SpCodeProb2", "SpCodeProb3", "SpCodeProb4", "SpPerc1", "SpPerc2", "SpPerc3", "SpPerc4", "GsSpBest1", "GsSpBest2", "GsSpBest3", "GsSpBest4", "GsSpHigh1", "GsSpHigh2", "GsSpHigh3", "GsSpHigh4", - "GsSpLow1", "GsSpLow2", "GsSpLow3", "GsSpLow4")) %>% - full_join(to.return.multi, by = "idx") %>% - arrange(.data$idx) %>% - select(!!sight.names) %>% + "GsSpLow1", "GsSpLow2", "GsSpLow3", "GsSpLow4")) |> + full_join(to.return.multi, by = "idx") |> + arrange(.data$idx) |> + select(!!sight.names) |> mutate(SpCode = case_when(.data$Event %in% c("S", "K", "M", "G") ~ .data$SpCode, .data$Event == "t" ~ .data$TurtleSp, .data$Event == "p" ~ .data$PinnipedSp, @@ -549,7 +549,7 @@ das_sight.das_df <- function(x, return.format = c("default", "wide", "complete") .data$Event == "F" ~ .data$BoatGs, TRUE ~ NA_real_), GsSpBest = if_else(.data$Event %in% c("t", "p", "F"), - .data$GsSchoolBest, .data$GsSpBest)) %>% + .data$GsSchoolBest, .data$GsSpBest)) |> select(-c("TurtleSp", "TurtleGs", "PinnipedSp", "PinnipedGs", "BoatType", "BoatGs")) } @@ -557,7 +557,7 @@ das_sight.das_df <- function(x, return.format = c("default", "wide", "complete") #-------------------------------------------------------- ### Calculate perp dist and return - to.return %>% - mutate(PerpDistKm = abs(sin(.data$Bearing*pi/180) * .data$DistNm) * 1.852) %>% + to.return |> + mutate(PerpDistKm = abs(sin(.data$Bearing*pi/180) * .data$DistNm) * 1.852) |> filter(.data$Event %in% return.events) } diff --git a/R/randpicks_convert.R b/R/randpicks_convert.R index b75dc63..48ac9af 100644 --- a/R/randpicks_convert.R +++ b/R/randpicks_convert.R @@ -22,12 +22,12 @@ #' @export randpicks_convert <- function(x.randpicks, x.segdata, seg.km) { # For each continuous effort section, determine the number of segments - x.segdata.summ <- x.segdata %>% - mutate(cont_eff_sect = cumsum(.data$stlin == 1)) %>% - group_by(.data$cont_eff_sect) %>% + x.segdata.summ <- x.segdata |> + mutate(cont_eff_sect = cumsum(.data$stlin == 1)) |> + group_by(.data$cont_eff_sect) |> summarise(count = n(), dist_sum = sum(.data$dist)) - x.summ.check <- x.segdata.summ %>% + x.summ.check <- x.segdata.summ |> mutate(dist_max = .data$count * seg.km + 0.5 * seg.km, dist_check = .data$dist_max >= .data$dist_sum) @@ -44,14 +44,14 @@ randpicks_convert <- function(x.randpicks, x.segdata, seg.km) { # Prep segdata summary info for joining with randpicks - rand.out <- x.segdata.summ %>% - filter(.data$dist_sum > seg.km) %>% - bind_cols(x.randpicks) %>% + rand.out <- x.segdata.summ |> + filter(.data$dist_sum > seg.km) |> + bind_cols(x.randpicks) |> mutate(pos_value = ceiling(.data$RandPick * .data$count)) # 'Expand' randpicks data to include all continuous effort sections - x.segdata.summ %>% - select(effort_section = "cont_eff_sect") %>% - left_join(rand.out, by = c("effort_section" = "cont_eff_sect")) %>% + x.segdata.summ |> + select(effort_section = "cont_eff_sect") |> + left_join(rand.out, by = c("effort_section" = "cont_eff_sect")) |> select("effort_section", randpicks = "pos_value") } diff --git a/R/swfscDAS-internal.R b/R/swfscDAS-internal.R index 7f1a8ed..2cbb78e 100644 --- a/R/swfscDAS-internal.R +++ b/R/swfscDAS-internal.R @@ -48,14 +48,14 @@ identical(is.na(y.df[[1]]), is.na(y.df[[2]])) ) - y.df <- y.df %>% select(c(1, 2)) + y.df <- y.df |> select(c(1, 2)) names(y.df) <- c("lon", "lat") if (anyNA(y.df$lon)) { - obj.list <- y.df %>% - mutate(na_sum = cumsum(is.na(.data$lon) & is.na(.data$lat))) %>% - filter(!is.na(.data$lon) & !is.na(.data$lat)) %>% - group_by(.data$na_sum) %>% + obj.list <- y.df |> + mutate(na_sum = cumsum(is.na(.data$lon) & is.na(.data$lat))) |> + filter(!is.na(.data$lon) & !is.na(.data$lat)) |> + group_by(.data$na_sum) |> summarise(temp = list( st_polygon(list(matrix(c(.data$lon, .data$lat), ncol = 2))) )) diff --git a/R/swfscDAS-package.R b/R/swfscDAS-package.R index baadd72..b20989c 100644 --- a/R/swfscDAS-package.R +++ b/R/swfscDAS-package.R @@ -14,7 +14,6 @@ #' #' @importFrom dplyr add_row arrange between bind_cols bind_rows case_when desc distinct everything filter full_join group_by if_else lag left_join mutate n n_distinct reframe right_join select slice starts_with summarise ungroup #' @importFrom lubridate year month day tz -#' @importFrom magrittr %>% #' @importFrom methods setOldClass #' @importFrom parallel clusterExport detectCores parLapplyLB stopCluster #' @importFrom readr cols col_character fwf_cols fwf_positions read_fwf diff --git a/data-raw/das_sample.R b/data-raw/das_sample.R index 23fe960..ba3ffe8 100644 --- a/data-raw/das_sample.R +++ b/data-raw/das_sample.R @@ -44,9 +44,9 @@ source("data-raw/das_sample_funcs.R") idx1 <- head(which(x.orig$Event == "B"), 1) idx2 <- tail(which(x.orig$Event == "E"), 1) -x <- x.orig %>% +x <- x.orig |> # Slice from first B event to before last E event - slice(idx1:idx2) %>% + slice(idx1:idx2) |> # Adjust dates and lat/lons mutate(DateTime = DateTime + days(round(runif(1, min = 5, max = 10) * 365, 0)), Lat = Lat + runif(1, min = 30, max = 40), @@ -63,8 +63,8 @@ x <- x.orig %>% # Set cruise number and remove a specific comments stopifnot(x$Event[which(grepl("j3", x$Data3))] == "C") #x[165, ] -x <- x %>% - mutate(Data1 = ifelse(Event == "B", 1000, Data1)) %>% +x <- x |> + mutate(Data1 = ifelse(Event == "B", 1000, Data1)) |> slice(-which(grepl("j3", x$Data3))) diff --git a/data-raw/das_sample_funcs.R b/data-raw/das_sample_funcs.R index 433422b..133035c 100644 --- a/data-raw/das_sample_funcs.R +++ b/data-raw/das_sample_funcs.R @@ -70,7 +70,7 @@ raw_das_fwf <- function(x, file, data9len = 100) { ### Process output of das_read na.paste <- c("NA", "NANA", "NANANA") - x.proc <- x %>% + x.proc <- x |> mutate(EffortDot = ifelse(EffortDot, ".", " "), tm_hms = paste0(chr_z(hour(DateTime)), chr_z(minute(DateTime)), chr_z(second(DateTime))), diff --git a/data-raw/das_unit.R b/data-raw/das_unit.R index c0561e5..c4774fd 100644 --- a/data-raw/das_unit.R +++ b/data-raw/das_unit.R @@ -34,9 +34,9 @@ names.cols <- c( x <- data.frame( Event = "B", EffortDot = TRUE, DateTime = dt1, Lat = lat1, Lon = lon1, Data1 = "1", Data2 = "C", Data3 = "7", Data4 = "Y", Data5 = NA, Data6 = NA, Data7 = NA, Data8 = NA, Data9 = NA -) %>% +) |> add_row(Event = "R", EffortDot = TRUE, DateTime = dt1, Lat = lat1, Lon = lon1, - Data1 = "1", Data2 = "C", Data3 = "7", Data4 = "Y", Data5 = NA, Data6 = NA, Data7 = NA, Data8 = NA, Data9 = NA) %>% + Data1 = "1", Data2 = "C", Data3 = "7", Data4 = "Y", Data5 = NA, Data6 = NA, Data7 = NA, Data8 = NA, Data9 = NA) |> mutate(EventNum = NA, file_das = "das_unit.das", line_num = seq_along(.)) diff --git a/tests/testthat/test-zero_sighting_events.R b/tests/testthat/test-zero_sighting_events.R index 44eb508..d74a594 100644 --- a/tests/testthat/test-zero_sighting_events.R +++ b/tests/testthat/test-zero_sighting_events.R @@ -12,8 +12,8 @@ test_that("The column classes of the das_sight 'default' output are the same whe y.sight <- dplyr::filter(das_sight(y.proc, return.format = "default"), Event == "ZZ") - y.sight0 <- y.proc %>% - filter(!(Event %in% event.sight)) %>% + y.sight0 <- y.proc |> + filter(!(Event %in% event.sight)) |> das_sight(return.format = "default") expect_identical(y.sight, y.sight0) @@ -24,8 +24,8 @@ test_that("The column classes of the das_sight 'wide' output, are the same wheth y.sight <- dplyr::filter(das_sight(y.proc, return.format = "wide"), Event == "ZZ") - y.sight0 <- y.proc %>% - filter(!(Event %in% event.sight)) %>% + y.sight0 <- y.proc |> + filter(!(Event %in% event.sight)) |> das_sight(return.format = "wide") expect_identical(y.sight, y.sight0) @@ -36,8 +36,8 @@ test_that("The column classes of the das_sight 'complete' output are the same wh y.sight <- dplyr::filter(das_sight(y.proc, return.format = "complete"), Event == "ZZ") - y.sight0 <- y.proc %>% - filter(!(Event %in% event.sight)) %>% + y.sight0 <- y.proc |> + filter(!(Event %in% event.sight)) |> das_sight(return.format = "complete") expect_identical(y.sight, y.sight0) diff --git a/vignettes/swfscDAS.Rmd b/vignettes/swfscDAS.Rmd index b06a62f..941a552 100644 --- a/vignettes/swfscDAS.Rmd +++ b/vignettes/swfscDAS.Rmd @@ -71,9 +71,9 @@ table(y.proc$Event) table(y.proc$Bft) # Filter for R and E events to extract lat/lon points -y.proc %>% - filter(Event %in% c("R", "E")) %>% - select(Event, Lat, Lon, Cruise, Mode, EffType) %>% +y.proc |> + filter(Event %in% c("R", "E")) |> + select(Event, Lat, Lon, Cruise, Mode, EffType) |> head() ``` @@ -83,18 +83,18 @@ The `swfscDAS` package does contain specific functions for extracting and/or sum ```{r sight} y.sight <- das_sight(y.proc, return.format = "default") -y.sight %>% - select(Event, SightNo:PerpDistKm) %>% +y.sight |> + select(Event, SightNo:PerpDistKm) |> glimpse() y.sight.wide <- das_sight(y.proc, return.format = "wide") -y.sight.wide %>% - select(Event, SightNo:PerpDistKm) %>% +y.sight.wide |> + select(Event, SightNo:PerpDistKm) |> glimpse() y.sight.complete <- das_sight(y.proc, return.format = "complete") -y.sight.complete %>% - select(Event, SightNo:PerpDistKm) %>% +y.sight.complete |> + select(Event, SightNo:PerpDistKm) |> glimpse() ``` @@ -104,7 +104,7 @@ You can also easily filter or subset the sighting data for the desired event cod y.sight.sg <- das_sight(y.proc, return.events = c("S", "G")) # Note that this is equivalent to: -y.sight.sg2 <- das_sight(y.proc) %>% filter(Event %in% c("S", "G")) +y.sight.sg2 <- das_sight(y.proc) |> filter(Event %in% c("S", "G")) ``` ## Effort @@ -173,6 +173,6 @@ In addition, you can use `das_comments` to generate comment strings. This is par y.comm <- das_comments(y.proc) glimpse(select(y.comm, Event, line_num, comment_str)) -y.comm %>% +y.comm |> filter(str_detect(comment_str, "gear")) #Could also use grepl() here ```