1、矩阵结构
矩阵的结构是指矩阵子元素的排列方式。
函数名称 | 函数功能 |
isempty(A) | 检测矩阵是否为空 |
isscalar(A) | 检测矩阵是否是单元素的标量矩阵 |
isvector(A) | 检测矩阵是否是只具有一行或一列元素的一维向量 |
issparse(A) | 检测数组是否是系数矩阵 |
返回1表示该矩阵是某一特定类型的矩阵,返回0则表示不是。
2、矩阵大小
包括:矩阵的维数;矩阵各维(例如最长维,用户指定的维);矩阵元素的个数。
函数 | 调用格式 | 描述 |
ndims | n=ndims(X) | 获取矩阵的维数 |
size | [m,n]=size(X) | 获取矩阵各维上的长度 |
length | n=length(X) | 获取矩阵最长维的长度 |
numel | n=numel(X) | 获取矩阵元素的个数 |
size函数的返回值可以是分开显示的单个实数变量,也可以是一个行向量。
在size函数的输入参数中增加维度参数可以获取指定维度的长度,其中“1”表示行,“2”表示列
>> A=eye(5,3)A =1 0 00 1 00 0 10 0 00 0 0>> ndims(A)ans =2>> length(A)ans =5>> [m,n]=size(A)m =5n =3>> d=size(A)d =5 3>> e1=size(A,1)e1 =5>> e2=size(A,2)e2 =3>> numel(A)ans =15
3、矩阵维度
对于空矩阵、标量矩阵、一维矩阵、二维矩阵,MATLAB都将其作为普通的二维数组对待。
需要特别注意的是:用[ ]产生的空矩阵是作为二维矩阵的。
>> a=[];b=5;c=1:3;d=magic(2);e(:,:,2)=[1,2;3,4];
>> Ndims = [ndims(a),ndims(b),ndims(c),ndims(d),ndims(e)]Ndims =2 2 2 2 3
4、矩阵的数据类型
矩阵作为MATLAB的内部数据储存和运算结构,其元素可以是各种各样的数据类型(数值,字符串,元胞,结构体等)
函数名称 | 函数功能 |
isnumeric | 检测矩阵元素是否为数值型变量 |
isreal | 检测矩阵元素是否为实数数值型变量 |
isfloat | 检测矩阵元素是否为浮点数值型变量 |
isinteger | 检测矩阵元素是否为整数型变量 |
islogical | 检测矩阵元素是否为逻辑型变量 |
ischar | 检测矩阵元素是否为字符型变量 |
isstruct | 检测矩阵元素是否为结构体型变量 |
iscell | 检测矩阵元素是否为元胞型变量 |
iscellstr | 检测矩阵元素是否为结构体的元胞型变量 |
5、矩阵占用的内存
了解矩阵占用内存情况,对于优化MATLAB代码性能十分重要。
可以通过whos查看当前工作区中指定变量的所有信息,(变量名,矩阵大小,内存占用,数据类型)