# rtoro

0th

Percentile

##### Random Toroidal Shift of Point Pattern

Applies a random shift simultaneously to all the points of a point pattern, or to selected sub-patterns, with wraparound at the borders of the window.

Keywords
spatial
##### Usage
rtoro(X, which=NULL)
##### Arguments
X
Point pattern to be subjected to random shift. An object of class "ppp" or "splitppp".
which
Identifies which components of the pattern will be shifted. Vector of marks (if X is a multitype point pattern) or subset of names(X) (if X is a "splitppp" object). Each component will be shi
##### Details

This operation randomises the locations of the points in a point pattern. It is useful for some hypothesis testing purposes.

A shift' is a simultaneous, parallel displacement of all points by the same displacement vector $(\Delta x, \Delta y)$. Shifting a point pattern could leave some points outside the boundary of the window of observation, so we may (if the window is a rectangle) treat opposite edges of the window as identical, so that a point which disappears off the right-hand edge will re-appear at the left-hand edge. This is called a toroidal shift'' because it makes the rectangle topologically equivalent to the surface of a torus (doughnut).

The argument X may be either

• a point pattern (an object of class"ppp")
• an object of class"splitppp"(basically a list of point patterns, obtained fromsplit.ppp).
If which=NULL, then
• IfXis a point pattern object, all the points of the pattern are shifted simultaneously by the same displacement vector.
• IfXis an object of class"splitppp"then each of the component point patterns is randomly shifted by a different displacement vector.
The argument which identifies which sub-patterns of X will be subjected to random shifts. Different sub-patterns will be shifted by different displacement vectors. If which is not NULL, then
• IfXis a point pattern object, it should be a multitype pattern (i.e.X$marksmust be a factor). Thenwhichshould be a vector of types (i.e. a vector containing one or more levels ofX$marks). For each valueainwhich, the sub-pattern ofXconsisting of points of typeaonly will be extracted, and subjected to a random toroidal shift. A different shift will be applied to different sub-patterns. The points not selected bywhichwill be unchanged.
• IfXis an object of class"splitppp", thenwhichcan be any valid subset index for the listX. For examplewhichcould be a vector of names of components in the listX. Each selected component point pattern will be shifted by a different displacement vector.
In this implementation, every random displacement vector is generated with a uniform distribution over the range of possible displacement vectors. That is, the coordinates $\Delta x, \Delta y$ are independent and uniformly distributed.

##### Value

• An object of the same type as X.

• rtoro
##### Examples
data(amacrine)

# point patterns:
# shift all points simultaneously
X <- rtoro(amacrine)
# shift "on" and "off" points separately
X <- rtoro(amacrine, which=amacrine\$marks)
# shift "on" points and leave "off" points fixed
X <- rtoro(amacrine, which="on")

# splitppp objects:
Y <- split(amacrine)
# shift "on" and "off" points separately
Z <- rtoro(Y)
# shift "on" points and leave "off" points fixed
Z <- rtoro(Y, "on")
# shift all points simultaneously
Z <- split(rtoro(superimpose(Y)))`
Documentation reproduced from package spatstat, version 1.7-11, License: GPL version 2 or newer

### Community examples

Looks like there are no examples yet.