R/run_plus_attributes.R
add_plus_network_attributes.Rd
Given a river network with required base attributes, adds the NHDPlus network attributes: hydrosequence, levelpath, terminalpath, pathlength, down levelpath, down hydroseq, total drainage area, and terminalflag. The function implements two parallelization schemes for small and large basins respectively. If a number of cores is specified, parallel execution will be used.
add_plus_network_attributes(
net,
override = 5,
cores = NULL,
split_temp = NULL,
status = TRUE
)
data.frame containing comid, tocomid, nameID, lengthkm, and areasqkm. Additional attributes will be passed through unchanged. tocomid == 0 is the convention used for outlets. If a "weight" column is provided, it will be used in get_levelpaths otherwise, arbolate sum is calculated for the network and used as the weight.
numeric factor to be passed to get_levelpaths
integer number of processes to spawn if run in parallel.
character path to optional temporary copy of the network split into independent sub-networks. If it exists, it will be read from disk rather than recreated.
logical should progress be printed?
data.frame with added attributes
source(system.file("extdata", "walker_data.R", package = "nhdplusTools"))
test_flowline <- prepare_nhdplus(walker_flowline, 0, 0, FALSE)
#> Warning: removing geometry
#> Warning: Removed 0 flowlines that don't apply.
#> Includes: Coastlines, non-dendritic paths,
#> and networks with drainage area less than 0 sqkm, and drainage basins smaller than FALSE
test_flowline <- data.frame(
comid = test_flowline$COMID,
tocomid = test_flowline$toCOMID,
nameID = walker_flowline$GNIS_ID,
lengthkm = test_flowline$LENGTHKM,
areasqkm = walker_flowline$AreaSqKM)
add_plus_network_attributes(test_flowline)
#> Loading required namespace: future
#> Loading required namespace: future.apply
#> Warning: Unknown or uninitialised column: `lengthkm`.
#> Error in pathlength_km[i] <- length_km[toids[i]] + pathlength_km[toids[i]]: replacement has length zero