counting and merging in array

1 visualizzazione (ultimi 30 giorni)
Max
Max il 4 Gen 2016
Risposto: Guillaume il 4 Gen 2016
How would I write for example a function that merges say x=(0:2:6 ,[1 ,2]) into x=[0,1,2,2,4,6] Furthermore say I wanted to count sequences in an array for example say y=[2,0,0,3,0,0,0,4] there are 5 sequences in here (2,[0,0],3,[0,0,0],4) so the answer should be 5. Thank you for the help

Risposte (1)

Guillaume
Guillaume il 4 Gen 2016
First one is simply sorting:
x = {0:2:6, [1 2]};
sort([x{:}])
Second one is achieved by using diff to detect transitions:
y = [2 0 0 3 0 0 0 4];
seqcount = sum(diff([NaN y]) ~= 0)

Categorie

Scopri di più su Creating and Concatenating Matrices in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by