LOGICALFIND
LOGICALFIND - find occurrences of consecutive non-zeros in a vector
B = LOGICALFIND(V, N) returns the starting indices of any occurrences of N or more consecutive non-zeros in the vector V.
[B, E] = LOGICALFIND(V,N) returns the ending indices as well.
[B, E, CS] = LOGICALFIND(V,N) returns a cell array CS with these occurrences: CS{i} is equal to V(B(i):E(i))
V is (or can be converted to) a binary (logical) vector. N is a scalar integer larger than 0.
Example:
V = logical([0 1 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 1])
B = logicalfind(V,3)
% -> B = [8 15]
X = floor(4*rand(20,1)) % a numerical row vector
[B, E, CS] = logicalfind(X,2)
L = E - B + 1 % length of each occurence
isequal(L, cellfun(@numel,CS)) % check!
See also: find, strfind, regexp
引用格式
Jos (10584) (2025). LOGICALFIND (https://ww2.mathworks.cn/matlabcentral/fileexchange/45305-logicalfind), MATLAB Central File Exchange. 检索时间: .
MATLAB 版本兼容性
平台兼容性
Windows macOS Linux类别
标签
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!版本 | 已发布 | 发行说明 | |
---|---|---|---|
1.0.0.0 |