2017-10-14 121 views
0

我试图重建从逻辑参数的矩阵如下面的例子:改革矩阵从2D逻辑矩阵(不重塑)

a=rand(2,5) 
b=rand(2,5) 
c=a>b 

a(:,c)=b(:,c) 

但是我得到Index exceeds matrix dimension错误。这可以在事先不重塑矩阵的情况下完成吗?

+0

对我来说,好像你想做'a(c)= b(c)'。如果您提供非随机确切的输入以及这些输入的预期输出,那么您的问题会比现在更清晰 –

回答

0

如果你想ab之间,最小的值复制到每个条目的尝试:

a=rand(2,5); 
b=rand(2,5); 


c = find(a>b); % c contains the position of value of the greatest val 
a(c)=b(c) % removes greates value copying a smaller value from b 

如果你要复制的最大的价值创造修改变量c声明。

Index exceeds matrix dimensions是由于您尝试使用矩阵尺寸列表:和矩阵c。查找会创建一个满足所需关系的值列表,并可用于调用特定值。