您现在的位置:e-works > 智造书屋 > 书籍列表 > 机械工程设计分析和MATLAB应用(第3版) > 矩阵元素的提取

第二章 矩阵和数组及其运算

第二节 矩阵元素的提取

1.通过下标提取矩阵元素

A(i, j )表示A矩阵第i行第j列的元素。例如,提取A矩阵第3行第1列元素A(3,1)
>> A=[1 2 3;4 5 6;7 8 9]
A(3,1)
运算结果
A =
     1     2     3
     4     5     6
     7     8     9
ans =
     7

2.通过元素序号提取矩阵元素

在MATLAB中,矩阵元素按列存储,首先是第1列,其次是第2列,以此类推,一直到矩阵的最后1列元素,每列元素按照自上而下的顺序存储。例如,通过元素序号提取A矩阵第6个元素。
>> A=[1 2 3 4;5 6 7 8;9 10 11 12]
A(6)
运算结果
A =
     1     2     3     4
     5     6     7     8
     9    10    11    12
ans =
    10
可见,矩阵元素序号与它的存储顺序是一一对应的。

3.使用函数find(c)查找符合条件的矩阵元素的行和列

函数find(c)的使用格式
[row,col] = find(c)
其中,c一般为逻辑表达式;row返回满足条件的元素的行号,col返回满足条件的元素的列号。
例2-1  查找矩阵a=[12 34 26 17 21;61 50 89 12 8;25 62 91 23 47]中大于等于20、小于等于60的矩阵元素。
a=[12 34 26 17 21;61 50 89 12 8;25 62 91 23 47]
[r,c]=find(a>=20 & a<=60);
b=find(a>=20 & a<=60);      % 向量b存放符合条件的矩阵元素序号
disp ('    符合条件的矩阵元素的行号和列号:'),[r,c]
disp ('    符合条件的矩阵元素的序号:'),b'
运算结果
a =
    12    34    26    17    21
    61    50    89    12     8
    25    62    91    23    47
符合条件的矩阵元素的行号和列号:
ans =
     3     1
     1     2
     2     2
     1     3
     3     4
     1     5
     3     5
符合条件的矩阵元素的序号:
ans =
     3     4     5     7    12    13    15