Matlab-矩阵 - 简介


MATLAB(矩阵实验室)是第四代高级编程语言和交互式环境,用于数值计算、可视化和编程。它允许矩阵操作;绘制函数和数据;算法的实现;创建用户界面;与其他语言编写的程序交互,包括 C、C++、Java 和 FORTRAN;分析数据;开发算法;并创建模型和应用程序。

在本教程中,我们将重点介绍使用 MATLAB 的矩阵实现。

矩阵

矩阵是按行和列排列的数字的集合,表示矩形阵列。

2行3列的矩阵示例如下所示

矩阵

矩阵维数

矩阵的维数是根据行数和列数定义的。

2 行 3 列的矩阵称为 2x3 矩阵。

3 行 3 列的矩阵称为 3x3 矩阵。

Matlab 中的矩阵

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

例子

要创建 4x5 矩阵,请输入以下内容。

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

该矩阵有 4 行和 5 列。

第一行的值为 1 2 3 4 5

第二行:2 3 4 5 6

第三行:3 4 5 6 7

第四行:4 5 6 7 8

输出

大小为 4x5 的矩阵如下所示

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]

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

要获取矩阵中第 n 列的所有元素,可以使用 A (:,n),其中 n 代表矩阵中的第 no 列。

A(:,n).

例子

现在,让我们根据矩阵 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 将执行上述语句并返回以下结果。

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

>> 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
 
>> a(:, 2:3)

ans =
   2  3
   3  4
   4  5
   5  6
 
>>

以同样的方式,您可以通过获取矩阵的子部分来创建子矩阵。

例子

让我们创建一个子矩阵 saby,取 a 的内部子部分,如下所示 -

3  4  5 
4  5  6

在 MATLAB 命令窗口中执行期间,矩阵将如下所示 -

>> 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
   
>> sa = a(2:3,2:4)

sa =
   3  4  5
   4  5  6
   
>>