Computes the distances between pairs of points taken from two different point patterns on the same linear network.
# S3 method for lpp
crossdist(X, Y, …, method="C")
Point patterns on a linear network (objects of class "lpp"
).
They must lie on the same network.
Ignored.
String specifying which method of calculation to use.
Values are "C"
and "interpreted"
.
A matrix whose [i,j]
entry is the distance
from the i
-th point in X
to the j
-th point in Y
.
Matrix entries are nonnegative numbers or infinity (Inf
).
Given two point patterns on a linear network, this function computes the Euclidean distance from each point in the first pattern to each point in the second pattern, measuring distance by the shortest path in the network.
This is a method for the generic function crossdist
for point patterns on a linear network
(objects of class "lpp"
).
This function expects two point pattern objects X
and Y
on the same linear network,
and returns the matrix whose [i,j]
entry is the
shortest-path distance from X[i]
to Y[j]
.
The argument method
is not normally used. It is
retained only for checking the validity of the software.
If method = "interpreted"
then the distances are
computed using interpreted R code only. If method="C"
(the default) then C code is used.
The C code is much faster.
If two points cannot be joined by a path,
the distance between them is infinite (Inf
).
# NOT RUN {
v <- split(chicago)
X <- v$cartheft
Y <- v$burglary
d <- crossdist(X, Y)
# }
Run the code above in your browser using DataLab