Matlab矩阵创建与操作详解:大小、维度、数目等

1.矩阵的概念

众所周知,矩阵是一个二维的数据阵列;

Matlab是一个基于矩阵的计算环境,最基本的的数据单元是矩阵,单个数值也存储为矩阵,在这种情况下,矩阵的大小为1乘1;

对于字符数据,例如'Hello World'这样的字符元素,看作是1×11的矩阵,每个字符表示一个矩阵元素;

另外,Matlab也支持有两个以上维度的数据结构,例如三维的数据结构,称为三维数组,以此类推,可达n维数组。

2.创建矩阵基本方法

基本运算符:[],即,使用中括号把矩阵元素数据括起来,用逗号或空格分隔同一行的元素,用分号或回车键分隔不同的行,程序示例如下:

[1 2 3]  %1*3的矩阵

[1,2,3]  %1*3的矩阵

[1 2 3;4 5 6]  %2*3的矩阵

[1 2 3

   4 5 6]  %2*3的矩阵

3.创建矩阵的常用函数

话不多说,直接看程序示例:

zeros(1,4)  %1行4列的全0矩阵(第一个参数表示行数)

zeros(3,4)  %3行4列的全0矩阵(第二个参数表示列数)

zeros(4)  %4阶(4*4)全0矩阵(只有一个参数则行数列数相同)

ones(1,4)  %1行4列的全1矩阵

eye(3)  %3阶单位矩阵

eye(2,3)  %2行3列的单位矩阵

magic(3)  %3阶魔方矩阵

magic(30) %30阶魔方矩阵

4.矩阵的属性

矩阵属性是指,描述矩阵的信息,包括大小、长度、元素数目和维度等;

常用的函数,如,矩阵的大小:size,矩阵的长度:length(矩阵行数和列数中最大者为矩阵的长度),矩阵元素数目:numel,矩阵的维度ndims;

注意:矩阵的大小,是指矩阵的行数和列数,如2行3列的矩阵,矩阵大小为2*3,与之区别的是,矩阵的维度,是指二维、三维、四维,…,n维(也称为高维/多维数组),而平时的说法中,如,矩阵的维度是2*3,其实是在讲,矩阵的大小是2*3;

再注意,严格来讲,二维矩阵才能称为矩阵,三维及以上应该成为数组,因为三维及以上的数组是不存在矩阵运算法则的,而平时的说法中,矩阵和数组多混为一谈,但不影响交流和使用,我们也不必咬文嚼字。

程序示例如下:

a=[1 2 3 4;5 6 7 8] %创建2*4矩阵

size(a)  %获得矩阵的行数和列数,2和4

length(a)  %矩阵长度:取行数、列数中的最大值,即为4

numel(a)  %返回元素个数,即为8

ndims(a)  %矩阵维度(2维度)

5.空矩阵

空矩阵是指,有一个或多个等于零的维度(0×0,0×1,1×0)

程序示例如下:

a=[]  %创建空矩阵

size(a)  %行列数都为0

length(a)  %矩阵长度为0

numel(a)  %元素个数为0

isempty(a)  %判断是否为空矩阵,返回逻辑值1(真)

zeros(0,1)  %创建空矩阵的其他方法

6.标量

标量是指,维度为1×1的矩阵,在Matlab中显示为单个实数或复数

程序示例如下:

a=2  %创建标量

size(a) %自行运行程序,观察标量矩阵的各属性

length(a)

numel(a)

isempty(a)

isscalar(a)  %判断是否为标量,返回逻辑值1(真)

7.向量

向量是指,维度为1×n或n×1的矩阵,在Matlab中显示为一个行或一个列

程序示例如下:

a=[1 2 3]  %创建1×3的向量

size(a)  %自行运行程序,观察向量矩阵的各属性

length(a)

numel(a)

isempty(a)

isscalar(a)

isvector(a)  %判断是否向量,返回逻辑值1(真)

8.数据序列

数据序列是一种特殊形式的矩阵,一般以行向量形式表现。

(1)冒号运算符(:)

应用格式:起始值:步长值:终止值

步长值可不写,默认为1,程序示例如下:

1:5  %行向量,即,[1 2 3 4 5]

1:4.5  %按照默认步长为1累计,终止值取到4(不能大于给定终止值),即,[1 2 3 4]

4:1  %空矩阵(初始值4加步长1,无论如何,都取不到终止值1)

4:-1:1  %行向量,即,[4 3 2 1]

2.5:0.3:3.2  %按0.3增长至终止值内,即,[2.5 2.8 3.1]

(2)创建序列的函数linspace

应用格式:linspace(初始值,终止值,元素数目)

元素数目可不写,默认为100,步长按照公式自动计算:(初始值-终止值)/元素数目,程序示例如下:

linspace(1,5,5)  %1-5取5个元素,即,[1 2 3 4 5]

linspace(1,5)  %1-5范围内均匀取100个元素

免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空