| match.closest {MALDIquant} | R Documentation |
Relaxed Value Matching
Description
match.closest returns a vector of the positions of (first) matches
its first arguments in its second. In contrast to the similar
match it just accept numeric arguments but
has an additional tolerance argument that allows relaxed
matching.
Usage
match.closest(x, table, tolerance = Inf, nomatch = NA_integer_)
Arguments
x |
|
table |
|
tolerance |
|
nomatch |
|
Value
An integer vector of the same length as x giving the
closest position in table of the first match or nomatch if
there is no match.
See Also
Examples
library("MALDIquant")
match.closest(c(1.1, 1.4, 9.8), 1:10)
# [1] 1 1 10
match.closest(c(1.1, 1.4, 9.8), 1:10, tolerance=0.25)
# [1] 1 NA 10
match.closest(c(1.1, 1.4, 9.8), 1:10, tolerance=0.25, nomatch=0)
# [1] 1 0 10
## this function is most useful if you want to subset an intensityMatrix
## by a few (reference) peaks
## create an example intensityMatrix
im <- matrix(1:10, nrow=2, dimnames=list(NULL, 1:5))
attr(im, "mass") <- 1:5
im
# 1 2 3 4 5
# [1,] 1 3 5 7 9
# [2,] 2 4 6 8 10
# attr(,"mass")
# [1] 1 2 3 4 5
## reference peaks
ref <- c(2.2, 4.8)
im[, match.closest(ref, attr(im, "mass"), tolerance=0.25, nomatch=0)]
# 2 5
# [1,] 3 9
# [2,] 4 10