我需要一些帮助在矩阵运算!

2视图(30天)
玛丽
玛丽 2013年12月2日
回答: 图像分析 2013年12月2日
如果我有索引矩阵a
一个= [0 1 0 1 1 0 1)
和矩阵b包含实际的值
v = (2 3 4 2 6 1 8)
这里我要检查(我)= 1,那么我要做以下几点:
(2)= 1然后金额= v (4) + v (5) + v (7)
这将再次做每一个孤独. .
如何以最优的方式吗?

接受的答案

sixwwwwww
sixwwwwww 2013年12月2日
编辑:sixwwwwww 2013年12月2日
你需要这样的:
一个= [0 1 0 1 1 0 1);
v = (2 3 4 2 6 1 8);
i = 1:元素个数(a)
金额= 0;
j =我:元素个数(a)
如果(j) = = 1
和=和+ v (j);
结束
结束
sumArray (i) =总和;
结束
3评论
玛丽
玛丽 2013年12月2日
是的,谢谢

登录置评。

更多的答案(2)

Azzi Abdelmalek
Azzi Abdelmalek 2013年12月2日
一个= [1 0 1 1];
v = (2 3 4 5);
idx =找到(a);
n =元素个数(idx);
2 = cell2mat (arrayfun (@ (x) circshift (idx [0 - x]), (1: n)”,“联合国”,0));
s =总和(v (ii (:, 1: n - 1), 2)

图像分析
图像分析 2013年12月2日
玛丽,一个矢量化,更“MATLAB-ish”的方法是:
%使逻辑矩阵。
一个=逻辑([0 1 0 1 1 0 1])
%的“v”矩阵。
v = (2 3 4 2 6 1 8)
% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
%初始化
partialSum =。* (sum (v (a)) *(1、长度(a)))
% v值减去
partialSum (a) = partialSum (a) - v (a)
在命令窗口中,你会看到:
一个=
0 1 0 1 1 0 1
v =
1 2 3 4 2 6 8
partialSum =
0 19 0 19日19日0 19
partialSum =
0 16 0 17 13 0 11

标签

没有标签了。

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!