surveillance (version 1.12.1)

untie: Randomly Break Ties in Data

Description

This is a generic function intended to randomly break tied data in a way similar to what jitter does: tie-breaking is performed by shifting all data points by a random amount. The surveillance package defines methods for matrices, "epidataCS", and a default method for numeric vectors.

Usage

untie(x, amount, ...)

## S3 method for class 'epidataCS': untie(x, amount = list(t=NULL, s=NULL), minsep = list(t=0, s=0), direction = "left", keep.sources = FALSE, ..., verbose = FALSE) ## S3 method for class 'matrix': untie(x, amount = NULL, minsep = 0, constraint = NULL, giveup = 1000, ...) ## S3 method for class 'default': untie(x, amount = NULL, minsep = 0, direction = c("symmetric", "left", "right"), sort = NULL, giveup = 1000, ...)

Arguments

x
the data to be untied.
amount
upper bound for the random amount by which data are shifted. NULL means to use a data-driven default, which equals the minimum separation of the data points for the non-symmetric default method and its half for the symmetric defau
minsep
minimum separation of jittered points. Can only be obeyed if much smaller than amount (also depending on the number of points). minsep>0 is currently only implemented for the spatial (matrix) method.
keep.sources
logical (FALSE). If TRUE, the original list of possible event sources in x$events$.sources will be preserved. For instance, events observed at the same time did by definition not trigger each other; howev
constraint
an object of class "SpatialPolygons" representing the domain which the points of the matrix should belong to -- before and after jittering.
giveup
number of attempts after which the algorithm should stop trying to generate new points.
direction
one of "symmetric" (default), "left", or "right", indicating in which direction vector elements should be shifted.
sort
logical indicating if the jittered vector should be sorted. Defaults to doing so if the original vector was already sorted.
...
For the "epidataCS"-method: arguments passed to the matrix- or default-method (giveup). Unused in other methods.
verbose
logical passed to as.epidataCS.

Value

  • the untied (jittered) data.

See Also

jitter

Examples

Run this code
# vector example
set.seed(123)
untie(c(rep(1,3), rep(1.2, 4), rep(3,3)), direction="left", sort=FALSE)

# spatial example
data(imdepi)
coords <- coordinates(imdepi$events)
table(duplicated(coords))
plot(coords, cex=sqrt(multiplicity(coords)))
set.seed(1)
coords_untied <- untie(coords)
stopifnot(!anyDuplicated(coords_untied))
points(coords_untied, col=2) # shifted by very small amount in this case

Run the code above in your browser using DataCamp Workspace