×
MATLAB 介绍MATLAB 安装MATLAB 基本语法MATLAB 变量MATLAB 命令MATLAB M-FilesMATLAB 数据类型MATLAB 运算符MATLAB 算术运算MATLAB 逻辑运算MATLAB 关系运算MATLAB 位运算MATLAB 集合操作MATLAB 决策制定MATLAB if...end 语句MATLAB if...else...end 语句MATLAB if...elseif...else...endMATLAB 嵌套if语句MATLAB switch语句MATLAB 嵌套switch语句MATLAB 循环类型MATLAB while循环MATLAB for循环MATLAB 嵌套循环MATLAB break语句MATLAB continue语句MATLAB 向量MATLAB 向量的加法和减法MATLAB 标量向量乘法MATLAB 转置向量MATLAB 追加向量MATLAB 向量的模MATLAB 向量点积MATLAB 等差元素向量MATLAB 矩阵MATLAB 矩阵的加法和减法MATLAB 除法(左,右)矩阵MATLAB 矩阵标量操作MATLAB 矩阵的转置MATLAB 串联矩阵MATLAB 矩阵乘法MATLAB 矩阵的行列式MATLAB 逆矩阵MATLAB 数组MATLAB 冒号符号MATLAB 数字MATLAB 字符串MATLAB 函数MATLAB 数据导入MATLAB 数据导出MATLAB 绘图MATLAB 图形MATLAB 代数MATLAB 微积分MATLAB 多项式MATLAB 变换MATLAB GNU Octave教程MATLAB Simulink 仿真

MATLAB矩阵


在MATLAB中创建矩阵有以下规则:

  • 矩阵元素必须在 “[ ]” 内;
  • 矩阵的同行元素之间用空格(或 “,”)隔开;
  • 矩阵的行与行之间用 “;”(或回车符)隔开;
  • 矩阵的元素可以是数值、变量、表达式或函数;
  • 矩阵的尺寸不必预先定义。

下面的例子中我们创建了一个4×5的矩阵:

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

MATLAB引用一个矩阵的元素

如果要引用 mth 行和 nth 列的一个元素,写法如下:

mx(m, n);

例如,参阅第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将执行上述语句,并返回结果:

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

v =
     4
     5
     6
     7

当然也可以选择第 n 列的 m 个元素,对于这一点,写法如下:

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

用相同的方式,则可以建立一个子矩阵的一个子部分的矩阵。

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

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

例如,让我们创建一个子矩阵内部子部分的:

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

MATLAB删除行或列矩阵

可以删除整行或整列的矩阵,只要分配一组空方括号 [ ] 给该行或列。

基本上,[ ] 表示一个空数组。

在下述例子中我们删除第四行:

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

详细例子

在本例中,我们会建立一个3-3的矩阵 m,并把矩阵 m 中的第二行和第三行复制两次,这样就能够建立一个4×3的矩阵。

在MATLAB中建立一个脚本文件,代码如下:

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

MATLAB矩阵运算

接下来,我们将讨论下述的与MATLAB矩阵有关的常用的矩阵操作:


分类导航

关注微信下载离线手册

bootwiki移动版 bootwiki
(群号:472910771)