matlab矩阵常用指令
在学习《线性代数》时,常需要借助一些常用的矩阵指令,包括常用矩阵快速创建、矩阵元素提取等,请看下文。
操作方法
- 01
单位矩阵创建 在线性代数运算时,常需要单位矩阵E,在matlab中可使用eyes函数,如下所示即为其语法: Y = eye(n) Y = eye(m,n) Y = eye([m n]) Y = eye(size(A)) Y = eye Y = eye(m, n, classname) 作为示例,常用Y = eye(n)指令,比如要3x3单位矩阵,则可以如下指令: >> Y = eye(3) 输出: Y = 1 0 0 0 1 0 0 0 1
- 02
全零矩阵 在线性代数运算时,有时候需要全零矩阵,可使用zeros函数。 B = zeros(n) B = zeros(m,n) B = zeros([m n]) B = zeros(m,n,p,...) B = zeros([m n p ...]) B = zeros(size(A)) Y = zeros zeros(m, n,...,classname) zeros([m,n,...],classname) 以上是其全部语法,常用的指令是:B = zeros(n)与 B = zeros(m,n)如下: >> B = zeros(3) 输出: B = 0 0 0 0 0 0 0 0 0
- 03
元素全为1阵 在矩阵运算时,会遇到元素全为1矩阵,此时可以借助于ones函数。 Y = ones(n) Y = ones(m,n) Y = ones([m n]) Y = ones(m,n,p,...) Y = ones([m n p ...]) Y = ones(size(A)) Y = ones ones(m, n,...,classname) ones([m,n,...],classname) 如上是其全部语法,其中常用的还是:Y = ones(n) 与 Y = ones(m,n) 如下示例: >> Y = ones(3) 输出: Y = 1 1 1 1 1 1 1 1 1
- 04
随机矩阵 在概率分析或是数理推断时常需要借助随机矩阵,在matlab中可使用rand函数实现,其语法如下: r = rand(n) r = rand(m,n) r = rand([m,n]) r = rand(m,n,p,...) r = rand([m,n,p,...]) r = rand r = rand(size(A)) r = rand(..., 'double') r = rand(..., 'single') 当然,常用的指令还是: r = rand(n) 和 r = rand(m,n) 示例: >> r = rand(3,2) 输出的是3行2列的随机矩阵: r = 0.8147 0.9134 0.9058 0.6324 0.1270 0.0975
- 05
对角阵 在矩阵分析与计算时,尤其是计算矩阵的秩时,常会化简矩阵为对角阵,尤其是方阵分析。在matlab中可借助diag函数求特定矩阵的对角阵,如下示例: >> A = [1,2,3; 4,5,6; 7,8,9]; 输入的矩阵A是3x3方阵,输入如下指令: >> diag(A) 函数输出如下图所示:
- 06
提取矩阵三角部分 有时候需要提取矩阵的下三角亦或是下三角元素,可以使用tril或triu提取。 输入矩阵: >> A = [1,2,3; 4,5,6; 7,8,9]; 下三角提取: >> trilow = tril(A) 输出: trilow = 1 0 0 4 5 0 7 8 9 上三角提取: >> triup = triu(A) 输出: triup = 1 2 3 0 5 6 0 0 9
- 07
其它 作为矩阵运算实验室,matlab提供许多矩阵运算指令例如矩阵翻转指令flipud、fliplr,矩阵重排reshape、矩阵求秩rank等,大家可以查阅帮助文件了解其语法。