gpt4 book ai didi

matlab - 给定一个数字,快速检查它在哪个区间?

转载 作者:行者123 更新时间:2023-12-01 15:56:37 28 4
gpt4 key购买 nike

假设我有四个区间:[0, 82), [82, 146], [146, 180), [180, 255]。

给定一个数字,比方说 110。我想快速检查哪个区间是 110,返回 1 或 2 或 3 或 4。

我想知道 MATLAB 是否有现有的函数可以执行而不是手动比较数字。

谢谢。

最佳答案

你可以使用这样的东西-

intv = [
0 82;
82 146;
146 180;
180 255]

num = 110

index = find(num>=intv(:,1) & num<intv(:,2))

如果区间数组是行向量:intv = [0 82 146 180 255],您可以使用 -

index = find(num >= intv(1:end-1) & num < intv(2:end))

或者使用histc -

index = find(histc(num,intv))

根据@knedlsepp 的建议,对于多个输入数字 num,您可以使用 -

[~,indices] = histc(num, intv)

关于matlab - 给定一个数字,快速检查它在哪个区间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29559485/

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