gpt4 book ai didi

r - 使用二分搜索查找向量中最接近的值

转载 作者:行者123 更新时间:2023-12-03 07:08:20 26 4
gpt4 key购买 nike

作为一个愚蠢的玩具示例,假设

x=4.5
w=c(1,2,4,6,7)

我想知道是否有一个简单的 R 函数可以找到与 w 中的 x 最接近的匹配索引。因此,如果 foo 是该函数,foo(w,x) 将返回 3。函数 match 是正确的想法,但似乎仅适用于精确匹配。

解决方案here (例如 which.min(abs(w - x))which(abs(w-x)==min(abs(w-x))) 等)都是O(n) 而不是 log(n) (我假设 w 已经排序)。

最佳答案

R>findInterval(4.5, c(1,2,4,5,6))
[1] 3

将通过价格正确匹配(最接近但不会超过)来做到这一点。

关于r - 使用二分搜索查找向量中最接近的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20133344/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com