gpt4 book ai didi

matlab - 一次将一个数组与多个数字进行比较

转载 作者:行者123 更新时间:2023-12-01 13:16:53 25 4
gpt4 key购买 nike

如何将一组数字与几个给定数字进行比较?更准确地说,我有一个像这样给出的数组

inputArray = [1 2 2 3 4 6]

我想将 inputArray 与数字 1:7 进行比较,以最终计算 inputArray 中“1”、“2”、“3”等出现的次数。

显然我可以做类似的事情

res = zeros(7,1);
for i = 1:7
res(i) = sum(inputArray == i);
end

或者更一般地说,当我也可能对发生的位置感兴趣时

res = zeros(7,length(inputArray));
for i = 1:7
res(i,:) = inputArray == i;
end
res2 = sum(res,1);

出于好奇和/或提高速度,我想知道是否可以在单个语句中不使用 for 循环?

最佳答案

您似乎在寻找直方图计数,请参见此处:

x = [1 3 10 1 8]
b = [1 2 3]
histc(x,b)

将产生

[2 0 1]

关于matlab - 一次将一个数组与多个数字进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23756499/

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