1.5矩阵元素的引用

通过下标来引用矩阵的元素

  • A(3, 2)表示A矩阵第3行第2列的元素。
>> arr = [1,2,3;4,5,6];
>> arr(4, 5) = 10
arr =
1 2 3 0 0
4 5 6 0 0
0 0 0 0 0
0 0 0 0 10
>>

 如果引用元素超过矩阵的大小将自动扩充矩阵

通过序号来引用矩阵的元素

  • A(3)表示下图中按照列数的第三个元素

MATLAB中矩阵按照列从上往下的存储顺序,所以

A(1)是1

A(2)是4

A(3)是2

A(4)是5

A(5)是3

A(6)是6

序号与下标实际上是一一对应的:

以m x n矩阵A为例,矩阵元素A(i, j)的序号为(j - 1) x m + i

注:m x n 表示 m 行 n 列矩阵

 矩阵序号和下标的相互转换

函数名用法
sub2ind()

将行列下标转换成存储序号
D = sub2ind(S, I, J)

  • S:行数和列数组成的向量
  • I:矩阵元素的行下标
  • J:矩阵元素的列下标
ind2sub()

将存储序号转换成行列下标

[I, J] = ind2sub(S, D)

  • S:行数和列数组成的向量
  • D:序号
size()

获取矩阵的行列数构成的向量

>> size(A)

ans =

     2     3

注:A为一个两行三列构成的矩阵

ind2sub函数

>> clear
>> 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
>>

将(1,1),(2,1),(2,3),(2,2)下标值转化为序号

冒号表达式引用矩阵

  • A(:, :)表示矩阵的全部的引用
  • A(: , n)表示对第n列进行引用
  • A(n, :)表示对第n行进行引用
  • end运算符:表示某一行或某一列末尾元素的下标

利用空矩阵改变矩阵的元素

  • A(:, [m, n, ...]) = [] 
  • A([m, n...], :) = []

改变矩阵的形状

  • reshape(a, m, n)改变矩阵的形状,a为一维矩阵
  • B = A(:)将A所有元素堆叠成一列

posted @   IoOozZzz  阅读(11)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示