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将执行上述语句并返回以下结果 -
Trial>> a = [ 1 2 3 4 5; 2 3 4 5 6; 3 4 5 6 7; 4 5 6 7 8] a = 3 4 5 4 5 6 5 6 7 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 =
要引用第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 = 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 = 4 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 = 4 6
以同样的方式,可以创建一个矩阵的子部分的子矩阵。
例如,要创建一个子矩阵sa
,其包含以下内容的内部子部分:
3 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 = 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 = 3 4 5 4 5 6 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 = 3 4 4 5 5 6 6 7
例子
在这个例子中,首先创建一个3x3
的矩阵m
,然后复制该矩阵的第二行和第三行两次来创建一个4x3
的矩阵。
使用以下代码创建脚本文件 -
a = [ 1 2 3 ; 4 5 6; 7 8 9]; new_mat = a([2,3,2,3],:)
运行文件时,它产生以下结果 -
new_mat = 6 9 6 9
矩阵运算
在本节中,让我们讨论和学习下面一些常用的矩阵运算 -
以下是纠正/补充内容:
假设要从矩阵a的第4行元素来创建列向量v: 应该是第四列 提交时间:2019-08-12