counting and merging in array

1 view (last 30 days)
Max
Max on 4 Jan 2016
Answered: Guillaume on 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

Answers (1)

Guillaume
Guillaume on 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)

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!