我在R中有一个唯一整数的有序向量,我想找到最接近但小于或等于某个值的元素的索引。例如,对于向量4 8 15 16 23 42
和搜索值17
,我希望函数返回4
,索引为16
。在Python中,我会使用
bisect模块。 R中有类似的东西吗?
答案 0 :(得分:3)
您可以使用var re = /\d+[+]\d+/
result = window.eval(command);
var bool = re.test(result);
包中的binsearch
来获取二进制搜索的log(n)行为:
gtools
我们可以看到迭代次数的次线性缩放,有一个更大的例子:
library(gtools)
x <- c(4, 8, 15, 16, 23, 42)
binsearch(function(y) x[y]-17, range=c(1, length(x)))
# $call
# binsearch(fun = function(y) x[y] - 17, range = c(1, length(x)))
#
# $numiter
# [1] 3
#
# $flag
# [1] "Between Elements"
#
# $where
# [1] 4 5
#
# $value
# [1] -1 6
答案 1 :(得分:1)