Matlab 一些矩阵运算与数据提取

Matlab 一些矩阵运算与数据提取,matlab,matrix,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,根据以下

我想问一个关于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 M = 1  and  D = 2 , the output is B = 10 ; 11
if M = 3  and  D = 1 , the output is B = 18 ; 15
等等

实际上,我知道如何使用if语句来解决这个问题,但是我有大量的数据,这需要很长的时间。我相信要做到这一点还有很短的路要走


谢谢。

做这件事的捷径是

B = A(A(:,1)==M & A(:,2)==D, 3);
要学习的关键词就是针对这类问题。要将其应用于您的问题,请参阅Jonas的答案:-)。