当前位置: 首页 > 教程 > Matlab >

Matlab矩阵

精华
小牛编辑
152浏览
2023-03-14

矩阵是数字的二维数组。

在MATLAB中,可以通过在每行中输入元素来创建一个矩形,以逗号或空格分隔数字,并使用分号标记每一行的结尾。

例如,创建一个4×5矩阵a -

a = [ 1 2 3 4 5; 2 3 4 5 6; 3 4 5 6 7; 4 5 6 7 8]

MATLAB将执行上述语句并返回以下结果 -

Trial>> a = [ 1 2 3 4 5; 2 3 4 5 6; 3 4 5 6 7; 4 5 6 7 8]

a =

     1     2     3     4     5
     2     3     4     5     6
     3     4     5     6     7
     4     5     6     7     8

引用矩阵中的元素

要引用矩阵mx的第m行和第n列中的元素,可以这样书写 -

mx(m, n);

例如,要引用矩阵a的第2行和第5列中的元素,如上一节所述,可以这样书写 -

a = [ 1 2 3 4 5; 2 3 4 5 6; 3 4 5 6 7; 4 5 6 7 8];
a(2,5)

MATLAB执行上述语句并返回以下结果 -

Trial>> a = [ 1 2 3 4 5; 2 3 4 5 6; 3 4 5 6 7; 4 5 6 7 8];
a(2,5)

ans =

     6

要引用第m列中的所有元素,可以使用A(:,m)

假设要从矩阵a的第4行元素来创建列向量v

a = [ 1 2 3 4 5; 2 3 4 5 6; 3 4 5 6 7; 4 5 6 7 8];
v = a(:,4)

MATLAB执行上述语句并返回以下结果 -

Trial>> a = [ 1 2 3 4 5; 2 3 4 5 6; 3 4 5 6 7; 4 5 6 7 8];
v = a(:,4)

v =

     4
     5
     6
     7

还可以选择第m至第n列中的元素,代码如下 -

a(:,m:n)

下面是创建一个更小的矩阵,从第二和第三列的元素 -

a = [ 1 2 3 4 5; 2 3 4 5 6; 3 4 5 6 7; 4 5 6 7 8];
a(:, 2:3)

MATLAB执行上述语句并返回以下结果 -

Trial>> a = [ 1 2 3 4 5; 2 3 4 5 6; 3 4 5 6 7; 4 5 6 7 8];
a(:, 2:3)

ans =

     2     3
     3     4
     4     5
     5     6

以同样的方式,可以创建一个矩阵的子部分的子矩阵。

a = [ 1 2 3 4 5; 2 3 4 5 6; 3 4 5 6 7; 4 5 6 7 8];
a(:, 2:3)

MATLAB执行上述语句并返回以下结果 -

Trial>> a = [ 1 2 3 4 5; 2 3 4 5 6; 3 4 5 6 7; 4 5 6 7 8];
a(:, 2:3)

ans =

     2     3
     3     4
     4     5
     5     6

以同样的方式,可以创建一个矩阵的子部分的子矩阵。

例如,要创建一个子矩阵sa,其包含以下内容的内部子部分:

3     4     5     
4     5     6

参考以下实例代码 -

a = [ 1 2 3 4 5; 2 3 4 5 6; 3 4 5 6 7; 4 5 6 7 8];
sa = a(2:3,2:4)

MATLAB执行上述语句,返回以下结果 -

sa =
     3     4     5
     4     5     6

删除矩阵中的一行或一列

通过向该行或列分配一组空的方括号[]来删除矩阵的整个行或列。[]表示一个空数组。

例如,删除第四行 -

a = [ 1 2 3 4 5; 2 3 4 5 6; 3 4 5 6 7; 4 5 6 7 8];
a( 4 , : ) = []

MATLAB执行上述语句,返回以下结果 -

a =
     1     2     3     4     5
     2     3     4     5     6
     3     4     5     6     7

接下来,删除第五列 -

a = [ 1 2 3 4 5; 2 3 4 5 6; 3 4 5 6 7; 4 5 6 7 8];
a(: , 5)=[]

MATLAB执行上述语句,返回以下结果 -

a =
     1     2     3     4
     2     3     4     5
     3     4     5     6
     4     5     6     7

例子

在这个例子中,首先创建一个3x3的矩阵m,然后复制该矩阵的第二行和第三行两次来创建一个4x3的矩阵。

使用以下代码创建脚本文件 -

a = [ 1 2 3 ; 4 5 6; 7 8 9];
new_mat = a([2,3,2,3],:)

运行文件时,它产生以下结果 -

new_mat =
     4     5     6
     7     8     9
     4     5     6
     7     8     9

矩阵运算

在本节中,让我们讨论和学习下面一些常用的矩阵运算 -

  • 矩阵的加法和减法
  • 矩阵除法
  • 矩阵的标量运算
  • 矩阵的转置
  • 矩阵连接
  • 矩阵乘法
  • 矩阵的行列式
  • 矩阵的逆转

以下是纠正/补充内容:

假设要从矩阵a的第4行元素来创建列向量v: 应该是第四列   提交时间:2019-08-12
假设要从矩阵a的第4 行 元素来创建列向量v:改为:假设要从矩阵a的第4 列 元素来创建列向量v:   提交时间:2019-10-09