MATLAB 矩阵

矩阵是一个二维数组,其中每个元素都是一个数字。

在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将执行上述语句并返回以下结果

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(2,5)

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

ans =  6

要引用mth列中的所有元素,我们键入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将执行上述语句并返回以下结果-

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将执行上述语句并返回以下结果

ans =
      2     3
      3     4
      4     5
      5     6

同样地,我们可以创建一个子矩阵,从矩阵的子部分中获取子部分。

例如,让我们创建一个子矩阵sa,它包含a的内部子部分-

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的第四行

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的第五列

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

示例

在此示例中,让我们创建一个3 x 3的矩阵m,然后我们将该矩阵的第二行和第三行复制两次,以创建一个4 x 3的矩阵。

创建以下代码的脚本文件 -

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

矩阵运算

在本节中,让我们讨论以下基本且常用的矩阵运算 -

查看笔记

扫码一下
查看教程更方便