将数量添加到高于数量的矩阵元素

时间:2016-06-28 12:55:53

标签: matlab

如何将8添加到矩阵

的元素中
a=[1 7 5 7 2 3 8 2 9 5]

在不使用3循环的情况下大于for?期望的结果是矩阵

b=[1 15 13 15 2 3 16 2 17 13]

1 个答案:

答案 0 :(得分:3)

您可以创建一个逻辑向量,其中大于3的a的每个元素都是1,而不大于3的所有元素都是0.此向量可以乘以8,并添加原始的a向量:

b = a + 8 * (a>3);

<强>击穿

创建逻辑向量:

a>3
ans =
   0   1   1   1   0   0   1   0   1   1

将矢量乘以8:

8 * (a>3)
ans =
   0   8   8   8   0   0   8   0   8   8

并将其添加到a

b = a + 8*(a>3)
b =
    1   15   13   15    2    3   16    2   17   13