matlab中的size(),length(),ndims()函数的使用方法

1、size()使用方法:

size(a)表示矩阵每一个维度的长度

比方size([1 2 3;4 5 6])
等于[2 3];
表示他有2行3列。
size([1 2 3])
等于[1 3];
表示他有1行3列;
另外size(a,n)表示矩阵a在第n个维度下的长度。
比方size([1 2 3;4 5 6],1)
等于2,表示有2行
size([1 2 3;4 5 6],2)
等于3,表示有3列

2、length()使用方法:
length(a)表示矩阵a的最大的长度,即max(size(a))
比方length([1 2 3;4 5 6]);
等于3。由于2和3中最大是3;
当a是向量时,即表示向量的元素个数,由于向量总是1×n或n×1的,而n一定大于或等于1.所以得到的结果一定是n

3、ndims()使用方法:
ndims(a)表示矩阵a的维数,即length(size(a));
比方ndims([1 2 3;4 5 6]);
等于2。由于他是二维矩阵。
matlab觉得向量也是二维矩阵。仅仅只是当中一个维度的长为1.
因此ndims([1 2 3])也等于2;


我们能够构造一个三维甚至更高维度的矩阵,
比方a=cat(3,[1 2 3 4;5 6 7 8],[9 8 7 6;5 4 3 2]);
他除了行和列以外另一个维度。我们暂且把它叫做高度。
也就是说a有两层。第一层是[1 2 3 4;5 6 7 8],第二层是[9 8 7 6;5 4 3 2]。
此时有size(a)=[2 4 2];
即2行4列2层;
length(a)=4          ([2 4 2]中最大为4)
ndims(a)=3            (由于他有3个维度)
posted @ 2017-08-09 16:52  cxchanpin  阅读(1205)  评论(0编辑  收藏  举报