How find non zero

2 次查看(过去 30 天)
So
So 2016-6-6
评论: So 2016-6-6
Hello,
For example I have a vector A = [ 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0]. And I do find(A,2)-2, so I have the 2 zeros before the first one. However, how can I get the 5 zeros before the first one ? If i do find(A,5)-5 I will get only the 4 zeros because there is only four one.
Thank you.

采纳的回答

Stephen23
Stephen23 2016-6-6
>> A = [ 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0];
>> fun = @(n)find(A,1)-(n:-1:1);
>> fun(2)
ans =
6 7
>> fun(5)
ans =
3 4 5 6 7

更多回答(1 个)

Walter Roberson
Walter Roberson 2016-6-6
strfind(A, [0 0 0 0 0 1])

类别

Help CenterFile Exchange 中查找有关 Logical 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by