I have array like this: y=[00110011100001110011] I need search in array, and if it is sequence [..11..] then i get 5, if it sequence [..111...] then I should get 6. In the answer I should got sequence something like this:[..5665556...] So maybe know how do that?

 Akzeptierte Antwort

Azzi Abdelmalek
Azzi Abdelmalek am 23 Nov. 2013
Bearbeitet: Azzi Abdelmalek am 23 Nov. 2013

0 Stimmen

y='00110011100001110011'
ii={'' '5' '6'}
out=char(ii(cellfun(@numel,regexp(y,'1+','match'))))'
%or
y='00110011100001110011';
a=[0 y-'0' 0];
ii5=strfind(a,[0,1,1,0]);
ii6=strfind(a,[0,1,1,1,0]);
v(ii6)=6;
v(ii5)=5;
v(~v)=[];

2 Kommentare

Povilas
Povilas am 23 Nov. 2013
Thanks for answer. It works, but if I have that array [00110011100001111111] And I need that result be 5, if it is in interval from 11 to 1111?
y='00110011100001111111001111101111'
n=7; % maximal number of consecutive 1
ii=repmat({'6'},1,n+1)
ii(2:4)={'5'}
out=char(ii(cellfun(@numel,regexp(y,'1+','match'))))'

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (2)

Andrei Bobrov
Andrei Bobrov am 23 Nov. 2013
Bearbeitet: Andrei Bobrov am 23 Nov. 2013

0 Stimmen

out = sprintf('%d',strfind([y '0'],'10')-strfind(['0' y],'01')+4)
ADD
out = sprintf('%d',(strfind([y '0'],'10')-strfind(['0' y],'01')>3) + 5)
Povilas
Povilas am 23 Nov. 2013
Bearbeitet: Povilas am 24 Nov. 2013

0 Stimmen

but where y='00110011100001111111001111101111' it is not in '' but in [array2] and cant read from that array
Now my code is:
x = [Masyvas];
x >= 0.14
y1=double(ans)
z=y1'
y=num2str(z)
%y=u(find(~isspace(u)))
r = y(y ~= ' ') %delete space
n=18; % maximal number of consecutive 1
ii=repmat({'6'},1,n+1);
ii(8:13)={'5'};
out=char(ii(cellfun(@numel,regexp(r,'1+','match'))))
And get error:
??? Index exceeds matrix dimensions.
Error in ==> Untitled at 27
out=char(ii(cellfun(@numel,regexp(r,'1+','match'))))

4 Kommentare

Andrei Bobrov
Andrei Bobrov am 25 Nov. 2013
What is it Masyvas? Please small example for Masyvas.
Povilas
Povilas am 25 Nov. 2013
Bearbeitet: Povilas am 25 Nov. 2013
masyvas
Image Analyst
Image Analyst am 25 Nov. 2013
Do you expect him to type that in? Unlikely. Please make it easy for him to help you by attaching the csv or workbook file.
Povilas
Povilas am 26 Nov. 2013
add array file.

Melden Sie sich an, um zu kommentieren.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by