在MATLAB中从向量更改矩阵元素

时间:2013-09-02 21:33:06

标签: matlab

我有一个矩阵M只包含零。现在我有两个数组。第一个包含需要更改的矩阵的索引,第二个包含需要更改这些索引处的矩阵元素的值。

让我们说:

mat_A = zeros(50, 50);
vec_indices = [4; 5; 2500];
vec_values  = [1; 1; 1];

现在,如果我说M(4), M(5) or M(2500),我希望结果在所有情况下都为1。

是否有一个简单的“单线程”可以完成这项任务?

1 个答案:

答案 0 :(得分:4)

简单:

mat_A(vec_indices) = vec_values

请注意,这仅适用于linear indices,因此当您将50x50矩阵展平为一个2500x1向量时。