【发布时间】:2015-03-31 19:55:37
【问题描述】:
我需要一些帮助来矢量化以下操作,因为我有点困惑。
所以,我有一个m-by-2 矩阵A 和n-by-1 向量b。我想创建一个n-by-1 向量c,其条目应该是A 第二列的值,其行由b 的对应值所在的行给出...
不确定我是否足够清楚。无论如何,下面的代码确实可以正确计算c,因此您可以了解我想要的输出是什么。但是,我想对这个函数进行矢量化,因为我真正的 n 和 m 大约有数千个。
请注意,b 的值是非整数,不一定等于 A 第一列中的任何值(这些值也可能是非整数!)。
m = 5; n = 10;
A = [(0:m-1)*1.1;rand(1,m)]'
b = (m-1)*rand(n,1)
[bincounts, ind] = histc(b,A(:,1))
for i = 1:n
c(i) = A(ind(i),2);
end
【问题讨论】:
-
@Divakar 嗯...是的,我相信这实际上是解决方案! :) 你能回答我会接受它。
标签: matlab vectorization