cut.ppp {spatstat} | R Documentation |
Classifies the points in a point pattern into distinct types according to the numerical marks in the pattern, or according to another variable.
## S3 method for class 'ppp': cut(x, z=marks(x), ...)
x |
A two-dimensional point pattern.
An object of class "ppp" .
|
z |
Data determining the classification. A numeric vector, a factor, a pixel image, or a tessellation. Defaults to the vector of marks of the point pattern. |
... |
Arguments passed to cut.default .
They determine the breakpoints for the mapping from numerical values
in z to factor values in the output.
See cut.default .
|
This function has the effect of classifying each point in the point
pattern x
into one of several possible types. The
classification is based on the dataset z
, which may be either
z
)
determining the classification of each point in x
.
Levels of the factor determine the classification.
z
). The range of values of z
will be divided into
bands (the number of bands is determined by ...
)
and z
will be converted to a factor using
cut.default
.
"im"
).
The value of z
at each point of x
will be
used as the classifying variable.
"tess"
, see
tess
). Each point of x
will be classified
according to the tile of the tessellation into which it falls.
The default is to take z
to be the vector of marks in
x
. If the marks are numeric, then the range of values
of the numerical marks is divided into several intervals, and each
interval is associated with a level of a factor.
The result is a
marked point pattern, with the same window and point locations as
x
, but with the numeric mark of each point discretised
by replacing it by the factor level.
This is a convenient way to transform a marked point pattern
which has numeric marks into a multitype point pattern,
for example to plot it or analyse it. See the examples.
To select some points from a point pattern, use the subset operator
[.ppp
instead.
A multitype point pattern, that is, a point pattern object
(of class "ppp"
) with a marks
vector that is a factor.
Adrian Baddeley adrian@maths.uwa.edu.au http://www.maths.uwa.edu.au/~adrian/ and Rolf Turner r.turner@auckland.ac.nz
# (1) cutting based on numeric marks of point pattern data(longleaf) # Longleaf Pines data # the marks are positive real numbers indicating tree diameters. ## Not run: plot(longleaf) ## End(Not run) # cut the range of tree diameters into three intervals long3 <- cut(longleaf, breaks=3) ## Not run: plot(long3) ## End(Not run) # adult trees defined to have diameter at least 30 cm long2 <- cut(longleaf, breaks=c(0,30,100), labels=c("Sapling", "Adult")) plot(long2) plot(long2, cols=c("green","blue")) # (2) cutting based on another numeric vector # Divide Swedish Pines data into 3 classes # according to nearest neighbour distance data(swedishpines) plot(cut(swedishpines, nndist(swedishpines), breaks=3)) # (3) cutting based on tessellation # Divide Swedish Pines study region into a 4 x 4 grid of rectangles # and classify points accordingly tes <- tess(xgrid=seq(0,96,length=5),ygrid=seq(0,100,length=5)) plot(cut(swedishpines, tes)) plot(tes, lty=2, add=TRUE)