riverdistancetofrom {riverdist} | R Documentation |
River Distance Matrix between Two Datasets
Description
Returns a matrix of distances between each river location in two datasets, with one expressed as rows and the other expressed as columns.
Usage
riverdistancetofrom(
seg1,
vert1,
seg2,
vert2,
rivers,
logical1 = NULL,
logical2 = NULL,
ID1 = NULL,
ID2 = NULL,
stopiferror = TRUE,
algorithm = NULL
)
Arguments
seg1 |
First vector of river locations (segment component). These are expressed as rows in the output matrix. |
vert1 |
First vector of river locations (vertex component). These are expressed as rows in the output matrix. |
seg2 |
Second vector of river locations (segment component). These are expressed as columns in the output matrix. |
vert2 |
Second vector of river locations (vertex component). These are expressed as columns in the output matrix. |
rivers |
The river network object to use. |
logical1 |
A boolean vector that can be used for subsetting. If used,
|
logical2 |
A boolean vector that can be used for subsetting. If used,
|
ID1 |
a vector of observation IDs for the first dataset that will be used as row names in the output matrix. |
ID2 |
a vector of observation IDs for the second dataset that will be used as column names in the output matrix. |
stopiferror |
Whether or not to exit with an error if a route cannot be
found. If this is set to |
algorithm |
Which route detection algorithm to use ( |
Value
A matrix of distances (numeric) with rows and columns labeled by corresponding values of ID
.
Note
Building routes from the river mouth to each river network segment and/or distance lookup tables will greatly reduce computation time (see buildsegroutes).
Author(s)
Matt Tyers
See Also
Examples
data(Gulk)
streamlocs.seg <- c(1,8,11)
streamlocs.vert <- c(50,70,90)
streamlocs.ID <- c("A","B","C")
fish.seg <- c(1,4,9,12,14)
fish.vert <- c(10,11,12,13,14)
fish.ID <- c("fish1","fish2","fish3","fish4","fish5")
riverdistancetofrom(seg1=streamlocs.seg, vert1=streamlocs.vert,
seg2=fish.seg, vert2=fish.vert, rivers=Gulk, ID1=streamlocs.ID, ID2=fish.ID)
logi1 <- streamlocs.ID=="B" | streamlocs.ID=="C"
logi2 <- fish.ID!="fish3"
riverdistancetofrom(seg1=streamlocs.seg, vert1=streamlocs.vert,
seg2=fish.seg, vert2=fish.vert, rivers=Gulk, logical1=logi1, logical2=logi2,
ID1=streamlocs.ID, ID2=fish.ID)