Learn R Programming

spatstat.geom (version 3.2-8)

subset.psp: Subset of Line Segment Satisfying A Condition

Description

Given a line segment pattern, return the subset of segments which satisfy a specified condition.

Usage

# S3 method for psp
subset(x, subset, select, drop=FALSE, ...)

Value

A line segment pattern (object of class "psp") in the same spatial window as x. The result is a subset of x, possibly with some columns of marks removed.

Arguments

x

A line segment pattern (object of class "psp").

subset

Logical expression indicating which points are to be kept. The expression may involve the names of spatial coordinates of the segment endpoints (x0, y0, x1, y1), the marks, and (if there is more than one column of marks) the names of individual columns of marks. Missing values are taken as false. See Details.

select

Expression indicating which columns of marks should be kept. The names of columns of marks can be used in this expression, and will be treated as if they were column indices. See Details.

drop

Logical value indicating whether to remove unused levels of the marks, if the marks are a factor.

...

Ignored.

Author

Adrian Baddeley Adrian.Baddeley@curtin.edu.au, Rolf Turner rolfturner@posteo.net and Ege Rubak rubak@math.aau.dk.

Details

This is a method for the generic function subset. It extracts the subset of x consisting of those segments that satisfy the logical expression subset, and retains only the columns of marks that are specified by the expression select. The result is always a line segment pattern, with the same window as x.

The argument subset determines the subset that will be extracted. It should be a logical expression. It may involve the variable names x0, y0, x1, y1 representing the Cartesian coordinates of the segment endpoints; the name marks representing the marks; and (if there is more than one column of marks) the names of individual columns of marks. The default is to keep all segments.

The argument select determines which columns of marks will be retained (if there are several columns of marks). It should be an expression involving the names of columns of marks (which will be interpreted as integers representing the positions of these columns). For example if there are columns of marks named A to Z, then select=D:F is a valid expression and means that columns D, E and F will be retained. Similarly select=-(A:C) is valid and means that columns A to C will be deleted. The default is to retain all columns.

Setting subset=FALSE will produce an empty point pattern (i.e. containing zero points) in the same window as x. Setting select=FALSE or select= -marks will remove all the marks from x.

The argument drop determines whether to remove unused levels of a factor, if the resulting point pattern is multitype (i.e. the marks are a factor) or if the marks are a data frame in which some of the columns are factors.

The result is always a line segment pattern. To extract only some columns of marks as a data frame, use subset(as.data.frame(x), ...)

See Also

subset, [.psp.

Examples

Run this code
 plot(nbw.seg)
 plot(subset(nbw.seg, x0 < 500 & y0 < 800), add=TRUE, lwd=6)
 subset(nbw.seg, type == "island")
 subset(nbw.seg, type == "coast", select= -type)
 subset(nbw.seg, type %in% c("island", "coast"), select= FALSE)

Run the code above in your browser using DataLab