fastFindInterval: Find Intervals Containing Given Data

View source: R/utilseq.R

fastFindIntervalR Documentation

Find Intervals Containing Given Data

Description

A faster alternative to findInterval for intervals which are equally-spaced.

Usage

fastFindInterval(x, b, labels = FALSE, reltol = 0.001, dig.lab = 3L)

Arguments

x

Data. Numeric vector of values that are to be classified.

b

Breakpoints. Numeric vector of increasing values that are the endpoints of the intervals.

labels

Logical value specifying whether to return a factor, whose levels are the string labels of the intervals.

reltol

Relative tolerance. A positive number.

dig.lab

Integer. Maximum number of digits to use in the labels for the intervals, when labels=TRUE.

Details

This is an alternative to findInterval(x, b, rightmost.closed=TRUE) which seems to be faster when b is equally spaced and the length of x is large.

If labels=FALSE (the default), the result is an integer vector giving, for each value x[i], the index j of the interval that contains x[i], such that b[j] <= x[i] < b[j + 1].

If labels=TRUE, the result is a factor, and the levels are synthetic labels for the intervals, similar to those produced by findInterval.

Value

Integer vector, or factor.

Author(s)

\spatstatAuthors

.

See Also

findInterval

Examples

  x <- runif(10)
  b <- seq(0, 1, by=0.2)
  fastFindInterval(x, b, labels=TRUE)

spatstat/spatstat.utils documentation built on Aug. 18, 2024, 2:39 p.m.