之前,古哥给大家分享了Matlab中size函数的使用方法,具体可以参考:《Matlab使用size函数获取目标数组的尺寸》。今天,再给大家分享一个类似的函数,即length。Matlab中length函数可以用于获取数组中最大维度的长度值。即,一个3*7的矩阵,用length函数会得到长度为:7。
本文主要讲解Matlab中length函数的常见用法、语法说明、向量元素数、矩形矩阵的长度、字符串数组、结构体字段的长度。

下面,我们首先给出length函数的帮助文档如下:
>> help length
length Length of vector.
length(X) returns the length of vector X. It is equivalent
to MAX(SIZE(X)) for non-empty arrays and 0 for empty ones.很明显,它还等同于size返回值中的最大值。
常见用法
L = length(X)语法说明
L = length(X)返回 X 中最大数组维度的长度。对于向量,长度仅仅是元素数量。对于具有更多维度的数据,长度为max(size(X))。空数组的长度为零。
向量元素数
求出区间[5,10]中的均匀分布向量的长度。
v = 5:10得到如下输出结果:
v =
5 6 7 8 9 10L = length(v)得到如下输出结果:
L =
6矩形矩阵的长度
求出一个由零组成的3×7矩阵的长度。
X = zeros(3,7);
L = length(X)得到如下输出结果:
L =
7字符串数组
创建一个字符串数组并计算其长度,即每行中的元素数。
X = ["a" "b" "c"; "d" "e" "f"]我在Matlab 2016中发现,不支持双引号,于是换成单引号,代码如下:
X = ['a' 'b' 'c'; 'd' 'e' 'f']得到如下输出结果:
X =
abc
defL = length(X)得到如下输出结果:
L =
3
结构体字段的长度
创建一个包含Day和Month对应的字段的结构体。使用structfun函数将length应用于各个字段。
S = struct('Day',[1 13 14 26],'Month',{{'Jan','Feb', 'Mar'}})得到如下输出结果:
S =
Day: [1 13 14 26]
Month: {'Jan' 'Feb' 'Mar'}L = structfun(@(field) length(field),S)得到如下输出结果:
L =
4
3实际Matlab使用中,我们还是使用size多一点。
转载文章,原文出处:MathWorks官网,由古哥整理发布
如若转载,请注明出处:https://iymark.com/articles/2428.html

微信扫一扫
支付宝扫一扫

