一些矩阵运算和提取数据

时间:2011-09-16 16:08:39

标签: matlab matrix

我想在MATLAB中的一些矩阵运算中提出一个问题。

假设我们有这个矩阵:

A = [1     1    17
     1     1    14
     1     2    10
     1     2    11
     2     1     9
     2     1     9
     2     2    13
     2     2    12
     3     1    18
     3     1    15]

我想要第一列,比如M和第二列,说D控制整个矩阵产生一个行矩阵,具体取决于以下条件:

程序将要求用户输入M和D的值,如下所示:

M = input(' ENTER M VALUE =  ') ;

D = input(' ENTER D VALUE =  ') ;

现在,输出将是M和D的相应2个值,这两个值将取自第三列,

例如:

if M = 1  and  D = 2 , the output is B = 10 ; 11

另一个例子:

if M = 3  and  D = 1 , the output is B = 18 ; 15

等等。

实际上,我知道如何使用if语句来解决这个问题,但我有大量数据,这需要很长时间。我确信有一个简短的方法可以做到这一点。

感谢。

1 个答案:

答案 0 :(得分:2)

这样做的简短方法是

B = A(A(:,1)==M & A(:,2)==D, 3);