In an R session, I see the following, which means that findInterval is
an R function.

> findInterval
function (x, vec, rightmost.closed = FALSE, all.inside = FALSE)
{
    if (any(is.na(vec)))
        stop("'vec' contains NAs")
    if (is.unsorted(vec))
        stop("'vec' must be sorted non-decreasingly")
    if (has.na <- any(ix <- is.na(x)))
        x <- x[!ix]
    nx <- length(x)
    index <- integer(nx)
    .C("find_interv_vec", xt = as.double(vec), n = length(vec),
        x = as.double(x), nx = nx, as.logical(rightmost.closed),
        as.logical(all.inside), index, DUP = FALSE, NAOK = TRUE,
        PACKAGE = "base")
    if (has.na) {
        ii <- as.integer(ix)
        ii[ix] <- NA
        ii[!ix] <- index
        ii
    }
    else index
}
<environment: namespace:base>


However, I also see a C function with the same name in
src/appl/interv.c. I'm wondering where is this use?

int findInterval(double *xt, int n, double x,
                  Rboolean rightmost_closed,  Rboolean all_inside, int ilo,
                  int *mflag)

______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel

Reply via email to