扫码一下
查看教程更方便
矩阵是一个二维数组,其中每个元素都是一个数字。
在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
在本节中,让我们讨论以下基本且常用的矩阵运算 -