指数矢量

时间:2015-05-15 13:24:45

标签: matlab

我有一个名为A:

的10x10矩阵

我有列号的向量:

C = [2,6,8];

我有一个行号矢量:

R = [1; 3; 7];

列号对应于每一行。即对于第1列,我们查看由R给出的行号,对于第3列,我们查看由R给出的行号,依此类推。

我想将A中的确切位置替换为其他13号。

即。对于矩阵A中的每个位置:

(1,2) (1,6) (1,8), (3,2), (3, 6), (3,8) I want to insert 13.

我如何实现上述目标?

2 个答案:

答案 0 :(得分:4)

你可以做A(R,C) = 13 .......

答案 1 :(得分:0)

正如dlavila指出的,你可以做A(R,C) = 13这将是最好和最容易的。尽管如此,我已经编写了一个较长的代码,涉及eval函数,您将来可能会发现它很有用:

for ii=1:length(C)
    for jj =1:length(R)
        eval(strcat('A(', num2str(C(ii)), ',',num2str(R(jj)),')=13;'))
    end
end

两者都给出相同的结果。