首页 > 其他分享 >【Matlab学习1.5】矩阵元素的引用

【Matlab学习1.5】矩阵元素的引用

时间:2023-01-28 23:55:21浏览次数:41  
标签:1.5 下标 10 元素 矩阵 Matlab 序号

矩阵元素的引用方式

矩阵元素的引用

下标必须为正数,且用圆括号括起来

A(3,2)表示A矩阵第3行第2列的元素,如:>> A(3,2) = 200

例1.5.1:

>> A = [1,2,3;4,5,6];
>> A(4,5) = 10
A =
     1     2     3     0     0
     4     5     6     0     0
     0     0     0     0     0
     0     0     0     0    10

由此可见:如果给出的行下标或列下标大于原来矩阵的行数和列数,那么Matlab将自动扩展原来的矩阵,并将扩展后没有赋值的矩阵元素置为0。

通过序号来引用

在Matlab中,矩阵元素按列存储,即首先存储矩阵的第一列元素,然后存储第二列元素,…,一直到矩阵的最后一列元素。
矩阵元素的序号就是矩阵元素在内存中的排列顺序。

例1.5.2:

>> A = [1,2,3;4,5,6]
A =
     1     2     3
     4     5     6
>> A(3)
ans =
     2

由此可见:序号与下标是一一对应的,以m×n矩阵A为例,矩阵元素A(i,j)的序号为 (j-1)×m+i。

下标与序号互换函数

矩阵元素的序号与下标可以利用sub2ind和ind2sub函数实现相互转换。

sub2ind函数

将矩阵中指定元素的行、列下标转换成存储的序号。

调用格式为:D = sub2ind(S,I,J),即#序号 = sub2ind(行数和列数组成的向量,转换矩阵的行下标,转换矩阵的列标)

其中S一般由size函数获取。
如果 I 和 J 是矩阵,表示要将矩阵中的多个元素的行列下标转换为存储的序号,那么 I 和 J 的行列数必须相同。
D为对应下标元素的序号,它的行列数与 I 和 J 相同。

例1.5.3:

>> A = [1,3;4,6]
A =
     1     3
     4     6
>> A = [1:3;4:6]
A =
     1     2     3
     4     5     6
>> D = sub2ind(size(A),[1,2;2,2],[1,1;3,2])
D =
     1     2
     6     4

说明在一个2×3的矩阵中,下标为(1,1), (2,1), (2,3), (2,2)的元素序号分别为1,2,6,4。

ind2sub函数

将把矩阵元素的序号转换成对应的下标。

调用格式为:[I,J] = ind2sub(S,D),即[行下标,列下标] = ind2sub(行数和列数组成的向量,列数)

例1.5.4:

>> [I,J] = ind2sub([3,3],[1,3,5])
I =
     1     3     2
J =
     1     1     2

说明在一个3×3的矩阵中,序号为1,3,5的元素的下标分别为(1,1), (3,1), (2,2)。

利用冒号表达式获得子矩阵

子矩阵是指由矩阵中的一部分元素构成的矩阵。

既可以用冒号表达式作为引用矩阵的下标,也可以用单个的冒号作为行下标或列下标,代表全部行或全部列。

>> A(i,:)         #第i行的全部元素
>> A(:,j)         #第j列的全部元素
>> A(i:i+m,k:k+m) #第i~i+m行内且在第k~k+m列中的所有元素
>> A(i:i+m,:)     #第i~i+m行的全部元素

例1.5.5:

>> A = [1:5;6:10;11:15]
A =
     1     2     3     4     5
     6     7     8     9    10
    11    12    13    14    15
>> A(1:2,:)
ans =
     1     2     3     4     5
     6     7     8     9    10
>> A(2:3,1:2:5)
ans =
     6     8    10
    11    13    15

end运算符:表示某一维的末尾元素下标。

 

利用空矩阵删除矩阵的元素

改变矩阵的形状

标签:1.5,下标,10,元素,矩阵,Matlab,序号
From: https://www.cnblogs.com/crepuscule/p/17071558.html

相关文章