counting and merging in array

1 vue (au cours des 30 derniers jours)
Max
Max le 4 Jan 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

Réponses (1)

Guillaume
Guillaume le 4 Jan 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)

Catégories

En savoir plus sur Creating and Concatenating Matrices dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by