matlab中的 ndims(a)、length(a)、size(a) 分别是什么意思?

我假设给a=【123;456;789】我无论给个什么矩阵ndims(a)给出的结果总是2,这是为什么?还有size(a)是返回A各个维的最大元素个数size(a)给出的结... 我 假设给 a=【1 2 3;4 5 6;7 8 9】
我无论给个什么矩阵 ndims(a) 给出的结果总是2 ,这是为什么?
还有 size(a) 是 返回A各个维的最大元素个数 size(a)给出的结果却是 1 3

还有解释一下 length(a) 实例解释
展开
 我来答
greatdju
2008-07-05 · TA获得超过2.2万个赞
知道大有可为答主
回答量:2486
采纳率:50%
帮助的人:4193万
展开全部
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列

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

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个维度)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式