2010-10-21 119 views
0

我遇到操作矩阵的问题。任何帮助将非常感激!说我有一个矩阵:MATLAB看看矩阵中是否包含某些内容

xb = 

      1.00   2.00   3.00   6.00   5.00   9.00 

和另一个矩阵:

cb = 

     3000.00  4000.00  4000.00    0    0    0 

有没有办法编写的东西,会检查,看是否有1是XB基质中,并显示相应的单元格在cb中(与之相同的列)?

因此,例如,因为6位于上述xb矩阵中,程序将显示0.谢谢!

回答

2

在一个行:

cb(xb==1) 

xb==1创建相同大小的逻辑阵列xb,为1的地方xb为1,且0别处。由于此逻辑阵列的大小与cb的大小相同,因此可以将其用于建立索引。使用逻辑数组索引数组会返回逻辑数组为1的位置处的数组的所有值(将其视为掩码)。

+3

你可能想链接到这些关于浮点比较的问题:http://stackoverflow.com/questions/2202641/how-do-i-compare-all-elements-of-two-arrays-in-matlab, http://stackoverflow.com/questions/686439/why-is-24-0000-not-equal-to-24-0000-in-matlab – Amro 2010-10-21 20:03:15

+0

cb(abs(xb-1) Doresoom 2010-10-21 20:20:20

相关问题