diff --git a/workspace/06-2_aggregate_cats.Rmd b/workspace/04-2_aggregate_cats.Rmd similarity index 95% rename from workspace/06-2_aggregate_cats.Rmd rename to workspace/04-2_aggregate_cats.Rmd index b67a588c310582ba3f183138fda1a7f10aee7e5f..b6c95fe8f340e5fa3f711a25444c55f2c93add12 100644 --- a/workspace/06-2_aggregate_cats.Rmd +++ b/workspace/04-2_aggregate_cats.Rmd @@ -22,6 +22,7 @@ See `hyRefactory_config.R` for all constants. ```{r setup} source("R/utils.R") source("R/config.R") +source("R/user_vars.R") source("R/NHD_navigate.R") source("R/hyRefactor_funs.R") @@ -44,12 +45,12 @@ outlets_POI <- read_sf(out_refac_gpkg, outlets_layer) %>% POIs_data <- read_sf(nav_gpkg, poi_data_table) # reconciled have no ID applied in refactoring flowlines -reconciled <- st_transform(read_sf(out_refac_gpkg, reconciled_layer), crs) +reconciled <- st_transform(read_sf(out_refac_gpkg, reconciled_layer), proj_crs) refactored <- st_drop_geometry(read_sf(out_refac_gpkg, refactored_layer)) %>% select(COMID, Hydroseq) %>% mutate(COMID = as.integer(COMID)) -divides <- st_transform(read_sf(out_refac_gpkg, divide_layer), crs) +divides <- st_transform(read_sf(out_refac_gpkg, divide_layer), proj_crs) lookup <- read_sf(out_refac_gpkg, lookup_table_refactor) %>% inner_join(select(st_drop_geometry(nhd), COMID, TotDASqKM), by = c("NHDPlusV2_COMID" = "COMID")) @@ -105,7 +106,9 @@ if(needs_layer(out_agg_gpkg, agg_cats_layer)){ mutate(type = ifelse(type == "terminal" & !is.na(toID), "outlet", type)) %>% select(-toID) - outlets <- distinct(outlets) + outlets <- filter(outlets, ID %in% reconciled$ID) %>% + distinct() + agg_cats <- aggregate_catchments(flowpath = reconciled, divide = divides, outlets = outlets, @@ -141,9 +144,14 @@ if(needs_layer(out_agg_gpkg, agg_cats_layer)){ Type_Con = ifelse(!is.na(toID), 1, NA)) %>% st_as_sf() - final_POIs <- data.table::rbindlist(list(POIs_att, select(POIs_missing, + + if(nrow(POIs_missing) > 0){ + final_POIs <- data.table::rbindlist(list(POIs_att, select(POIs_missing, -c(Type_Term, Type_Con))), fill = TRUE) %>% - st_as_sf() + st_as_sf() + } else { + final_POIs <- POIs_att + } unaggregated_outlets <- filter(outlets_POI, !reconciled_ID %in% final_POIs$ID)